我想在命令行中运行模块中的所有单元测试,包括跳过的模块,而不使用像nose
等测试运行器。
目前我有python3 -m unittest discover
,但我没有看到任何覆盖跳过测试的选项。有这个命令吗?
答案 0 :(得分:0)
查看命令行实用程序的code,似乎没有一种明智的方法来避免跳过。一个讨厌的解决方法是在发现测试之前修补skip
:
python -c "import unittest as u; u.skip = lambda r: lambda t: t; u.main(None, argv=['', 'discover'])"
(也可能是补丁unittest.case.skip
;这根本不能保证工作,因为它依赖于装饰器通常如何使用,但你会看到是否还有任何东西被跳过。)