我有几个保存在\ tests中的测试模块。我然后在主类加载它们通过指定unittest.main()运行包中的所有测试模块
from tests.ClassTests1 import *
from tests.ClassTests2 import *
...
unittest.main()
运行主程序之前,有没有什么办法,以指导unittest.main()来运行\测试中的所有文件,而无需通过导入它们的无休止的重复去如上?例如。我试过from tests import *
,它不起作用。
编辑:我在程序化发现后没有通过命令行发现。
非常感谢!
我已经更新了现在的问题,使其更清晰一点:我是在程序化发现之后而不是通过命令行发现的。 Python模块内TestLoader.discover()的语法是什么。谢谢! – afora377
'TestLoader.discover()'返回包含所有已发现测试的TestSuite对象。执行返回的TestSuite对象的'.run()'方法来运行这些测试。 (在我回答中发布的链接中,这一切都得到了相当好的解释,你有没有仔细阅读?) –
谢谢!这是一个大规模的阅读,我是python的新手。所以我设法让它发现了测试,但是,我无法弄清楚如何处理进口。现在要运行它,我需要明确指定至少一个测试模块作为导入,例如, '从tests.ClassTests1导入*'。这是与我直觉相反的,因为我实际上在发现整个测试套件。但没有这个导入它不会编译。我究竟做错了什么?感谢您的帮助! – afora377