我有一个使用unittest的大型python测试文件,我从命令行运行。有些测试需要一段时间才能运行。这是一个温和的痛点,因为我经常只关注我添加的最后一次测试。我想要的是这个:
是否可以从命令行执行此操作?
答案 0 :(得分:1)
每个测试函数都声明为:
def test_something_something(self):
如果您在前面添加下划线,例如:
def _test_something_something(self):
该测试将被忽略。你可以做的一件事是快速find and replace in vim。找到所有“test_”并用“_test_”替换它们,然后找到一个失败的测试并删除下划线。
答案 1 :(得分:1)
(不是完全自动化的解决方案,但优于现有解决方案)
如果将测试类的名称作为参数传递给测试脚本,则只会运行该测试。例如,如果您只想在脚本 time |speed |wheels
1:00 |30 |no_data
2:00 |no_data|18
no_data|no_data|no_data
3:00 |50 |18
中的MyTest
类中运行测试:
test_whatever.py
您还可以将单个测试指定为该类的成员。例如,假设您要在类python3 test_whatever.py MyTest
中运行测试test_something
:
MyTest
答案 2 :(得分:0)
只需使用-最后失败选项
运行测试