如何在启用coverage时在PyCharm中调试py.test

sim*_*ack 13 python debugging pytest pycharm

启用coverage后,如何在PyCharm中调试py.test?

使用覆盖率启用覆盖率--cov=project --cov-report=term-missing,删除此密码并触发断点.

版本:pycharm 5.0.3,pytest == 2.8.5,pytest-cache == 1.0,pytest-cov == 2.2.0,pytest-pep8 == 1.0.6,pytest-xdist == 1.13.1,python-连身== 2.6.0.

(感谢jon关于进一步诊断问题的建议)

Int*_*nti 8

py.test中现在有一个标志来禁用覆盖范围,您可以在从PyCharm运行测试时激活覆盖范围。

要使用的标志是--no-cov。如果要将此方法应用于所有测试运行,可以将其添加到默认的pytest配置中,如下所示: pycharm pytest调试

额外提示:您可能还希望-s在其中放置一个标志,以便py.test不会吞噬输出。有关详细信息,请参见/sf/answers/1246722711/

如果您收到“无法识别的参数”错误,则可能需要安装pytest-cov,例如通过pip install pytest-cov

  • 您需要先`pip install pytest-cov`才能传递coverage选项!请考虑更新对此@inti的回复 (3认同)