Python中Unit Test用例无法执行,运行显示0测试用例求助
解决unittest测试用例无法执行的问题
你遇到的这个情况我太熟悉了——明明写了测试方法,结果运行后只显示Ran 0 tests in 0.000s,完全没执行测试逻辑。问题出在unittest框架的测试用例识别规则上:
- unittest只会自动把以
test_开头的方法当成测试用例来执行 - 你写的
any_test方法名不符合这个命名约定,所以直接被框架忽略了
只要把测试方法的名字改成以test_开头就行,修改后的代码如下:
import unittest class TestCaseDemo(unittest.TestCase): def setUp(self): print('setUP') # 调整方法名,以test_开头 def test_any(self): print('test') def tearDown(self): print('tearDown') unittest.main()
修改后再次运行,就能看到测试正常执行了,输出会变成:
setUP
test
tearDownRan 1 test in 0.000s
OK
Process finished with exit code 0
额外提个小细节:如果你的测试类里有多个测试方法,unittest会按照方法名的字典顺序来执行它们,这点在写多个测试时可以留意下。
内容的提问来源于stack exchange,提问作者gopal sawant
相关产品推荐
相关产品推荐

