Travis上的Python子进程覆盖率
我看过几篇关于这个主题的文章,但似乎没有一篇适合我 案例 一个Python包,包含基于Travis上的Python子进程覆盖率,python,travis-ci,coverage.py,Python,Travis Ci,Coverage.py,我看过几篇关于这个主题的文章,但似乎没有一篇适合我 案例 一个Python包,包含基于unittest,pytest作为测试运行程序的测试,以及类似pytestcov的插件,以支持覆盖范围。所有测试都在本地正常工作,所有测试都已执行并通过,所有测试的覆盖率都已计算,包括使用子流程的CLI测试。请检查\u输出 该项目: Travis生成的覆盖率报告: 本地生成的覆盖率报告: 问题 在Travis方面,没有计算CLI测试的覆盖率。无论我做什么,无论我在何处和多少次包含coverage.pth或s
unittest
,pytest
作为测试运行程序的测试,以及类似pytestcov
的插件,以支持覆盖范围。所有测试都在本地正常工作,所有测试都已执行并通过,所有测试的覆盖率都已计算,包括使用子流程的CLI测试。请检查\u输出
- 该项目:
- Travis生成的覆盖率报告:
- 本地生成的覆盖率报告:
问题
在Travis方面,没有计算CLI测试的覆盖率。无论我做什么,无论我在何处和多少次包含coverage.pth
或sitecustomize.py
(),都不包含CLI的覆盖范围
显而易见的问题
我做错了什么?回顾一下为解决这个问题所做的工作(对于那些可能需要答案的人来说),问题出在我配置的tox
上
之前(虽然测试通过,但效果不佳)
之后(在那里我得到了100%的覆盖率)
pip安装-e.
显然是这里的关键
[testenv]
# Some other config above this line
commands =
pytest
[testenv]
# Some other config above this line
commands =
coverage erase
pip install -e .
pytest