0
我有一个用Selenium Webdriver/Python 2.7编写的测试套件,它由几个测试用例组成。一些测试案例非常关键,如果他们失败了,那么整个测试失败,并且之后不需要运行测试用例。如何在指定测试失败后强制测试停止运行测试套件?
class TestSuite1(unittest.TestCase)
def setUp(self):
pass
def test1(self):
return True
def test2(self):
return false
def test3(self):
return True
# This is a critical test
def test4(self):
return false
def test5(self):
return True
def tearDown(self):
pass
因此,我想在test4失败时停止整个测试运行(测试运行应该在test2失败时继续运行),因为它非常重要。我知道我们可以使用装饰器,但我正在寻找更有效的方法,因为我在测试运行中有大约20个关键测试,并且对所有测试用例使用20标记看起来效率不高。
谢谢您的回答,似乎它应该工作正常,但它不是为我工作。有或没有self.fail(),所有测试正在运行。 – Mahmor 2015-04-06 02:09:04
@Mahmor,你如何运行你的测试?如果'if __name__ =='__main __':'里面的代码不是开始测试的,那么所有的测试都会运行。 – jedwards 2015-04-06 14:44:44
我使用python -m unittest a.py通过CLI运行它们。我已经复制了您在a.py中发布的确切代码。是对的吗? – Mahmor 2015-04-06 18:12:19