过了一会儿,我想到了另一个答案:
首先,我添加了一个新的例外:
class StopTests(Exception):"""Raise this exception in a test to stop the test run.""" pass
然后我
assert给孩子的测试课添加了一个新的:
def assertStopTestsIfFalse(self, statement, reason=''): try: assert statement except AssertionError: result.addFailure(self, sys.exc_info())
最后,我覆盖了将该
run函数包含在
testMethod()调用下方的功能:
except StopTests: result.addFailure(self, sys.exc_info()) result.stop()
我更喜欢这样做,因为现在任何测试都可以停止所有测试,并且没有特定于cpython的代码。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)