0

我开始使用 python 的鼻子来执行我的功能测试。

我将它与 SauceLab 的服务一起使用。我从命令行执行测试并在 Sauce 仪表板上查看报告。

现在,每个测试都是一个包含 setUp() 、 the_test() 和 tearDown() 方法的类。在 setUp() 方法中,有传递给 Sauce 的功能,用于配置运行测试的浏览器/版本/操作系统。

def setUp(self):
        #REMOTE
        desired_capabilities = webdriver.DesiredCapabilities.FIREFOX
        desired_capabilities['version'] = '21'
        desired_capabilities['platform'] = 'Windows XP'
        desired_capabilities['name'] = className.getName(self) 
        desired_capabilities['record-video'] = False

        self.wd = webdriver.Remote(desired_capabilities=desired_capabilities,command_executor="http://the_username:the_API_key@ondemand.saucelabs.com:80/wd/hub")
        self.wd.implicitly_wait(10)

我想做以下事情......:创建一个包含 setUp 和 tearDown 函数的单独文件,并在每次我需要它们的地方(测试/测试之前和之后)按名称调用它们。现在它们存在于我拥有的每个 python 文件中,它们是同一段代码。

此外,我认为鼻子提供了一种自动查看这两个函数并在需要时调用它们的方法。可行吗?

先感谢您

4

1 回答 1

1

把他们放在一个超级班里。

def MyTestCase(TestCase):

    def setUp(self):
        # do setup stuff

然后您的每个测试都可以从 MyTestCase 继承。然后,您可以在每个测试类中进一步覆盖 setUp 或 tearDown。但请记住也要调用超类的 init 方法。

于 2013-09-26T11:04:24.370 回答