在python中跳过单元测试的整个目录

时间:2014-01-08 15:26:49

标签: python unit-testing

我的单元测试有以下目录结构。

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中的所有测试?

1 个答案:

答案 0 :(得分:2)

您的链接页面中的unittest.skipIf(condition)似乎可以满足您的需求。

为目录中的每个测试添加unittest.skipIf(__skipThisDir__),并在文件顶部添加import test_configuration

然后在每个包含

的目录中添加“test_configuration.py”
 __skipThisDir__ = False  #or True as needed