【问题标题】:codecov unable to collect data using pytest - "Coverage.py warning: No data was collected."codecov 无法使用 pytest 收集数据 - “Coverage.py 警告:未收集数据。”
【发布时间】:2018-12-08 05:24:03
【问题描述】:

我正在尝试在我的公共 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)

【问题讨论】:

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


【解决方案1】:

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

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

【讨论】:

    猜你喜欢
    • 2018-04-27
    • 2014-08-11
    • 2018-07-03
    • 2021-11-30
    • 1970-01-01
    • 1970-01-01
    • 2012-02-27
    • 2015-06-18
    • 1970-01-01
    相关资源
    最近更新 更多