我有一个包含多个测试用例的TestCase
,每次测试结束后需要断言几个条件(这些条件对于每个测试都是相同的)。将这些断言添加到tearDown()
方法中是否可以?或者说这样做是一种不好的习惯,因为它们并没有清理任何东西?
什么是正确的做法?
我有一个包含多个测试用例的TestCase
,每次测试结束后需要断言几个条件(这些条件对于每个测试都是相同的)。将这些断言添加到tearDown()
方法中是否可以?或者说这样做是一种不好的习惯,因为它们并没有清理任何东西?
什么是正确的做法?
tearDown
中断言某些内容意味着你需要小心,在实际断言之前,确保所有清理工作都已完成,否则如果断言语句失败并引发异常,则清理代码可能不会被调用。tearDown
不应进行任何测试,显式比隐式更好。嗯,我以前从未见过这种情况。个人认为不应该这样做,因为它不属于那里。我会通过一个装饰器来实现,在最后进行断言。然后只需装饰您想要具有这些断言的测试函数即可。
关于Python装饰器的优秀介绍,请参见此问题的答案。