我开始使用python的Nose来执行我的功能测试。
我在SauceLab的服务中使用它。我从命令行执行测试,并在Sauce仪表板上查看报告。
现在,每个测试都是一个包含setUp(),the_test()和tearDown()方法的类。 在setUp()方法中,有一些功能传递给Sauce,配置将运行测试的Browser / version / OS。
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文件中,它们是同一段代码。
此外,我认为有一种方法可以让鼻子自动查看这两个功能,并在需要时调用它们。这可行吗?
提前谢谢
答案 0 :(得分:1)
把它们放在超级课堂上。
def MyTestCase(TestCase):
def setUp(self):
# do setup stuff
然后,每个测试都可以从MyTestCase继承。然后,您可以在每个测试类中进一步骑过setUp或tearDown。但是请记住也要调用超类init方法。