python unittest 运行器处理所有异常。我想用我的调试器捕捉它们。
有没有办法让我的 unittest 运行器重新引发测试异常以终止进程?我想自己处理它们。
编辑:找到解决方案。
你可以创建一个 unittest.TestSuite 并调用debug()来运行你想要调试的测试——包括用你的调试器捕获异常!
使用这种模式可以轻松完成:
import unittest
class DebuggableTestCase(unittest.TestCase):
    @classmethod
    def debugTestCase(cls):
        loader = unittest.defaultTestLoader
        testSuite = loader.loadTestsFromTestCase(cls)
        testSuite.debug()
class MyTestCase(DebuggableTestCase):
    def test_function_that_fails(self):
        raise Exception('test')
if __name__ == '__main__':
    MyTestCase.debugTestCase()