繁体   English   中英

Travis上的Python子流程覆盖

[英]Python sub-process coverage on Travis

我看过几篇关于这个主题的文章,但似乎没有一篇对我有用。

案子

一个 Python package 与基于unittest的测试, pytest作为测试运行器和插件,如pytest-cov来支持coverage 在本地一切正常,所有测试都执行并通过,计算所有测试的覆盖率,包括使用subprocess.check_output的 CLI 测试。

问题

不知何故,在 Travis 方面,没有为 CLI 测试计算覆盖率。 无论我做什么,无论我在何处以及多少次包含coverage.pthsitecustomize.py在此处阅读有关它的更多信息),都不包括CLI 的覆盖范围。

显而易见的问题

我究竟做错了什么?

作为对解决它所做的工作的回顾(对于可能需要答案的人),问题在于我的tox配置。

之前(虽然测试通过,但效果不佳)

[testenv]
# Some other config above this line
commands =
    pytest

之后(我真正做到了 100% 覆盖)

[testenv]
# Some other config above this line
commands =
    coverage erase
    pip install -e .
    pytest

pip install -e. 显然是这里的关键。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM