coverage.py - 从coverage.py生成的coverage.xml报告中去除绝对路径

标签 coverage.py

有没有办法使用coverage.py获得结果coverage.xml(或去除前缀)的相对路径?

最佳答案

我只能设法 sed 控制台输出。下面的 bash 代码将展开“../myrootmodule”并将其从覆盖输出中删除。它还将调整空间以保持列对齐。您必须调整 myrootmodule 路径(仅限第一行)。

prefix="$$(readlink -e $$(dirname $$(pwd)))/myrootmodule/"; \
            coverage report \
            | sed "s|$$prefix||" \
            | sed "s/^-\{$${#prefix}\}//" \    
            | sed "s/^Name \{$${#prefix}\}/Name/" \
            | sed "s/^TOTAL \{$${#prefix}\}/TOTAL/"

由于它很大,我将它包含在测试/Makefile 中。

关于coverage.py - 从coverage.py生成的coverage.xml报告中去除绝对路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19838094/

相关文章:

python - 代码覆盖率和三元运算符

pycharm - 如何让 PyC​​harm 了解某些文件/目录被排除在覆盖范围之外?

python - 使用 py.test 和 coverage.py 覆盖 Cython 模块

python - 为什么某些 Python 文件没有被 coverage.py 检查?

python-2.7 - unittest 说 continue 语句没有被测试?

python - coverage.py 针对 .pyc 文件

python - 如何在长时间运行的进程中运行 coverage.py?

coverage.py - 如何配置 tox 以便它在单个环境而不是所有环境上运行 pytest 覆盖?

django - 类' __str__ 的 Python 测试覆盖率