我的单元测试有以下目录结构。
top/
test1/
test2/
test3/
...
每个test1
目录都有__init__.py
,其中包含执行实际测试的TestSomething
类。
要暂时禁用这些测试,我必须浏览每个__init__.py
文件并将@unittest.skip
装饰器添加到TestSomething
类。
http://docs.python.org/2/library/unittest.html#skipping-tests-and-expected-failures
随着测试次数的增加,这将成为一项繁琐的工作,因为我必须通过每个目录来禁用测试。
我想知道是否有更简单的方法来禁用某个目录下的所有测试。例如,是否可以在top/__init__.py
中设置某些内容以关闭top
中的所有测试?
答案 0 :(得分:2)
您的链接页面中的unittest.skipIf(condition)
似乎可以满足您的需求。
为目录中的每个测试添加unittest.skipIf(__skipThisDir__)
,并在文件顶部添加import test_configuration
。
然后在每个包含
的目录中添加“test_configuration.py” __skipThisDir__ = False #or True as needed