微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

plugin.py:271: PytestWarning: 无法生成报告:没有要报告的数据

如何解决plugin.py:271: PytestWarning: 无法生成报告:没有要报告的数据

我使用

运行pytest
BOTO_CONfig=none pytest --cov-report xml --cov=src/ tests/unittests/

当我在本地 (Mac OS) 运行它时,它运行良好并生成覆盖率。

但是当我将代码上传到服务器时,服务器上的脚本使用相同的行,但产生警告而不是覆盖:

WARNING: Failed to generate report: No data to report.
----------- coverage: platform linux,python 3.7.1-final-0 -----------

============================= 78 passed in 20.05s ==============================
Coverage.py warning: No data was collected. (no-data-collected)
/home/travis/virtualenv/python3.7.1/lib/python3.7/site-packages/pytest_cov/plugin.py:271: PytestWarning: Failed to generate report: No data to report.

  self.cov_controller.finish()
The command "BOTO_CONfig=none pytest --cov-report xml --cov=src/ tests/unittests/" exited with 0.

我尝试添加 pip freeze 来部署脚本,并将我的虚拟环境设置为相同

在这一点上,我看到两种环境之间的唯一区别是 Ubuntu 与 Mac OS - 这应该没有区别。

可能导致问题的原因是什么?

我可以检查的两种环境之间可能存在哪些细微差别?

我能做些什么来获得更详细的错误描述?

更新:

有一条评论说我需要一些可重现的东西。这正是我想要做的。

我注意到我在本地有更新版本的 Python。因此,我将 python 降级为 3.7.1,将 pip 降级为 20.1.1

python --version pip --version 在本地和服务器上产生相同的响应。

然后我创建了一个新的虚拟环境并确保 pip freeze 产生与服务器上相同的输出

然后我在服务器上运行了相同的 pytest 命令:

BOTO_CONfig=none pytest --cov-report xml --cov=src/ tests/unittests/

...它产生了覆盖率

与此同时,服务器仍然没有生成覆盖范围。

我还能尝试什么?

还有什么不同?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。