Travis CI中python-coveralls无法识别覆盖率问题求助
为Python库配置Travis CI与Coveralls.io的实践分享
我最近在给一个小型Python库搭建Travis CI集成Coveralls.io的代码覆盖率统计流程,先跟大家梳理下我的项目结构:
libconfig ├── .coverage ├── .coveragerc ├── .coveralls.yml ├── LICENSE ├── README.md ├── REQUIREMENTS ├── .gitignore ├── .travis.yml ├── libconfig │ ├── __init__.py │ ├── config.py │ ├── evaluator.py │ ├── tests │ │ └── test_libconfig.py │ └── util.py ├── package.json ├── setup.cfg └── setup.py
目前我已经写了部分.coveragerc配置,内容如下:
[run] branch = False omit = */tests/* [report] # 后续还有报告相关的配置项待补充
结合这个项目结构,给大家几个配置时的关键提示:
- 确保
.travis.yml中包含依赖安装步骤:在install阶段加上pip install coverage coveralls pytest(可根据你的测试框架调整) - 测试执行要通过coverage包裹,比如
coverage run -m pytest libconfig/tests/test_libconfig.py .coveralls.yml需要配置仓库的token,或者直接在Travis CI的项目环境变量中设置COVERALLS_REPO_TOKEN,这样更安全- 最后在Travis的脚本阶段加上
coveralls命令来上传覆盖率数据
内容的提问来源于stack exchange,提问作者jaumebonet
相关产品推荐
相关产品推荐

