如果Python unittest中的setUp抛出异常则停止运行测试
我有一个测试类:
class mytest(unittest.TestCase):
def setUp(self):
os.mkdir(...)
...
def tearDown(self):
shutil.rmtree(...)
def test_one(self):
...
def test_two(self):
...
在运行 test_one
的 setUp
方法时,如果 mkdir
执行后出现了问题,它仍然会继续尝试运行 test_two
的 setUp
方法。这时候我会在 mkdir
上遇到错误,因为 rmtree
没有执行。
有没有办法让 Python 的 unittest 在 setUp
失败时停止当前的测试?我不想在普通的测试失败时停止。
1 个回答
13
在 setUp 方法中添加一个失败的调用。
def setUp(self):
try:
somethingThatMightFail()
except:
self.fail()