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