codecov无法使用pytest收集数据-“ Coverage.py警告:未收集到任何数据。”

时间:2018-12-08 05:24:04

标签: python travis-ci pytest codecov pytest-cov

我正在尝试在我的公共travis存储库上设置codecov,到目前为止,仍无法成功生成报告并将其上载到codecov.io。我似乎在终端上收到了一个错误的报告,说我的代码中有0%被警告覆盖了。

据我所知,我的.travis.yml和shell脚本完全符合pytest-cov和codecov文档中指定的约定。

包含完整日志的我的travis终端在这里:https://www.travis-ci.com/jmaggio14/imagepypelines/jobs/163802897#L681

我的仓库可以在这里找到:https://github.com/jmaggio14/imagepypelines/tree/89a6bbc2fadc94a51570d80be356941df1a87a87

我的(缩短的).travis.yml文件如下:

 sudo: false

  language: python

  python:
      - 2.7
      - 3.4
      - 3.5
      - 3.6

  install:
    # I removed some other lines for readability here
    - pip install codecov pytest-cov hypothesis

  script:
    # running tests and code coverage report
    - py.test --cov=imagepypelines tests/


  after_success:
    - codecov

我最终收到以下警告和一条消息,提示我的测试覆盖了我代码的0%

Coverage.py warning: No data was collected. (no-data-collected)

1 个答案:

答案 0 :(得分:3)

我重现了在本地运行测试的问题,发现覆盖范围需要tests文件夹包含__init__.py才能收集任何数据。

我在__init__.py文件夹中添加了tests,然后Coverage按预期收集了数据。

enter image description here