我无法使用py.test在PyCharm中进行调试。所有测试套件在“调试模式”下运行正常,但它不会在断点上停止。
我也有py.test作为默认测试运行器。
也许这不重要,但调试在我的Django服务器中正常工作。
有任何想法吗?
picture of enable_breakpoints_and_the_mode_of_pycharm_is_debug
参考文献:
对于我的情况,我发现了问题所在:
如果在--cov
中有pytest.ini
,那么pycharm中的断点将无效,在删除--cov
中的所有pytest.ini
后,pycharm中的断点可以正常工作。
原因:
“coverage模块和pycharm的调试器使用相同的跟踪API(sys.settrace) - 它们不能一起工作。” - https://github.com/pytest-dev/pytest-cov/issues/131
参考文献:
TL; DR:在“构建,执行,部署” - >“Python调试器”中禁用“Gevent compatible”标志。
似乎在某些时候我在pycharm中启用了“Gevent compatible”调试器,从那以后pytest-pycharm停止工作。禁用它将使pytest-pycharm再次工作。我希望这能为你们中的一些人解决问题。