2016-12-28 68 views
5

我们使用pytest来测试我们的项目并默认启用--doctest-modules来收集整个项目中的所有文档测试。我可以让pytest doctest模块忽略一个文件吗?

但是有一个wsgi.py,它可能不会在测试收集期间导入,但我不能让pytest忽略它。

我试过把它放在collect_ignore列表中conftest.py,但显然doctest模块不使用这个列表。

唯一能做的工作是把wsgi.py的整个目录放到norecursedirs的pytest配置文件中,但是这显然隐藏了我不想要的整个目录。

有没有办法让doctest模块忽略某个文件?

回答

2

您可以使用挂钩来有条件地从测试发现中排除某些文件夹。 https://docs.pytest.org/en/latest/writing_plugins.html

def pytest_ignore_collect(path, config): 
    """ return True to prevent considering this path for collection. 
    This hook is consulted for all files and directories prior to calling 
    more specific hooks. 
    """ 
相关问题