运行 pytest 和 pytest-cov 时忽略特定文件(不是目录)

问题描述 投票:0回答:3

我的项目结构为:

myproject
 src
   -routes.py
   -services.py
   -data_access.py
 tests
   -test_routes.py
   -test_services.py

我想在 src 上运行覆盖范围的测试,但想排除 src/data_access.py

我想实现类似的东西: pytest 测试 --cov=src --exclude=src/data_access.pyexclude 不是正确的参数。

python pytest pytest-cov
3个回答
1
投票

@Anu 是对的,但没有完全解释。

您需要在项目的根目录下创建 .coveragerc 文件。(如果没有,则需要指定它在哪里)。

在该文件中添加:
[奔跑]
省略=./*
考虑到您当前位于项目的根目录中,这将从覆盖范围中删除所有文件夹。
如果您需要包含特定文件,请使用 include = ... 代替。


0
投票

您可能需要添加coveragerc并使用--omit选项。


0
投票

您可以从

setup.cfg
pytest 部分跳过特定文件,如下所示:

[tool:pytest]
addopts = --ignore=src/data_access.py

您可以多次追加以忽略更多文件。

© www.soinside.com 2019 - 2024. All rights reserved.