强制Python单元测试出错
我查看了Python的单元测试用例模块,发现可以通过使用TestCase.fail()
这个对象强制让一个测试用例失败。不过,我没有找到任何方法可以强制让一个测试用例出错。有没有什么想法可以做到这一点呢?
编辑:
进一步解释一下
我现在正在使用一些很久以前写的测试脚本来测试固件。这些测试脚本使用了Python的单元测试模块,并且还导入了一些其他用户编写的模块。这些用户编写的模块会抛出一些异常。所以每当测试用例没有用正确的输入调用这些用户模块的方法时,就会抛出异常。单元测试模块会正确地将这些测试用例标记为错误。但是,从单元测试模块的输出中,只能看到异常产生的那一行的追踪信息,我并不能立即清楚是哪个输入导致了这个异常。因此,我在测试脚本中使用了try-except
结构来捕获异常,并打印出导致异常的输入。但是,由于我处理了这些异常,单元测试模块将这些测试用例标记为通过。正如@alecxe所指出的,在except块中使用raise
语句解决了这个问题。