gpt4 book ai didi

python - 如何在Python多模块的覆盖范围中排除目录

转载 作者:太空宇宙 更新时间:2023-11-03 20:04:05 25 4
gpt4 key购买 nike

我的项目的目录结构如下所示

ProjectRoot
- Module1
src/
tests/
- Module2
src/
tests/
...

我想从根目录运行所有测试并计算覆盖率。这是我正在使用的命令

python -m coverage run --branch -m unittest **/tests/test*

在这里,我想排除某些目录。我怎样才能做到这一点?

我尝试了一种创建 .coveragerc 的方法并添加了要排除的模块

...
omit =
Module2/*
...

并将此文件提供给命令 python -m coverage run --rcfile=.coveragerc --branch -m unittest **/tests/test*

但它仍然尝试选取 Module2 进行测试。

我错过了什么?

最佳答案

我刚刚尝试过我的案例,最终这有所帮助,这是我当前的项目(三个模块):

[report]
exclude_lines =
pragma: no cover

include =
../toolbox/*.py
../geometry_finder/*.py
../position_optimiser/*.py

[html]
directory = c:\tmp\Report

我现在尝试了以下方法:

[report]
exclude_lines =
pragma: no cover

include =
../.

omit =
../toolbox/*.py

[html]
directory = c:\tmp\Report

...而且我没有看到工具箱的覆盖范围。因此我无法真正确认。代码开始使用:

coverage run --branch .\unittest_package.py
coverage html

关于python - 如何在Python多模块的覆盖范围中排除目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59070264/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com