在另一个类中调用一个类的方法

2024-05-29 00:28:28 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图在另一个.py文件中调用test_check_footer_visible。在

origin.py具有:

class FooterSection(unittest.TestCase):
    """
    """
    browser  = None
    site_url = None

    def setUp(self):
        self.browser.open(self.site_url)
        self.browser.window_maximize()

        # make footer section
        self._footer = FooterPage(self.browser)

    def test_check_footer_visible(self):
        #press the page down
        self.browser.key_down_native("34")
        self.browser.key_down_native("34")
        self.browser.key_down_native("34")
        print "Page down"
        time.sleep (10)

现在在dest.py我需要给test_check_footer_visible()打电话。我该怎么做?在

dest.py具有以下格式:

^{pr2}$

我尝试了Call Class Method From Another Class中的所有内容


Tags: keypytestselfbrowsernoneurldef
1条回答
网友
1楼 · 发布于 2024-05-29 00:28:28

你不能(如果不做一些不光彩的事情,请看@glglglglglglglgl的注释),至少在不改变代码的情况下。不能这样做的原因是test_check_footer_visible将断言传入的第一个元素是FooterSection类的实例(它不是TestPageErrorSection的实例)。你有(至少)几个选择的重新因素。在

1)使TestPageErrorSectionFooterSection继承并直接使用该函数(例如self.test_check_footer_visible()基于类名,这似乎不是一个很好的选择

2)使test_check_footer_visible()成为正则函数。然后可以从任何一个类调用它。在

3)创建第三个类(例如SectionBase),将test_check_footer_visible放在该类上,并让其他2个类从中继承。在

相关问题 更多 >

    热门问题