
我通常不使用
unittest命令行,但是有自己的测试运行脚本。
您需要向
suite模块添加功能
def suite(): return unittest.TestLoader().loadTestsFromTestCase(BasicTests)
然后称它为
python -m unittest mytest.suite。但是后来我遇到了以下问题:
TypeError: calling <function suite at 0x00C1FB70> returned <unittest.TestSuite tests=[<mysite.BasicTests testMethod=test_ok>]>, not a test
发生这种情况是因为
unittest使用了类似的东西,
isinstance(mytest.suite(),TestSuite)但是通过执行
-m,您得到了
TestSuite该类的两个不同版本(一个是
__main__.TestSuite,另一个是
unittest.TestSuite),因此
isinstance返回false。
对我来说,这似乎是一个错误。
unittest.py通过
from unittest import TestSuite,TestCase在开始时插入进行修补即可
loadTestsFromName解决
isinstance问题。抱歉,我不能给您“ 正确的
”解决方案(如果有)。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)