问题
I cannot debug in PyCharm using py.test. All the test suite is running ok in "Debug mode" but it doesn't stop on breakpoints.
I also have py.test as the default test runner.
Maybe this is not important, but debugging works correctly in my Django server.
Any ideas?
picture of enable_breakpoints_and_the_mode_of_pycharm_is_debug
References:
pycharm-enabling-disabling-and-removing-breakpoints
Run/Debug Configuration: py.test
回答1:
For my situation, i found what the problem is:
If there is --cov
in pytest.ini
, then breakpoints in pycharm won't work, after deleting all --cov
in pytest.ini
, the breakpoints in pycharm can work.
Reason:
"The coverage module and pycharm's debugger use the same tracing api (sys.settrace) - they don't work together. " -- https://github.com/pytest-dev/pytest-cov/issues/131
References:
How to debug py.test in PyCharm when coverage is enabled
回答2:
What fixed for me was adding the --no-cov
to the Additional Arguments
on the Run/Debug Configurations
. I updated the Templates -> Python tests -> pytest
, so every new test gets this configuration.
Just delete your current debug settings and it will work.
Pycharm 2018.3.x
回答3:
TL;DR: Disable the "Gevent compatible" flag in the "Build, execution, Deployment" -> "Python Debugger".
It seems that at some point I enabled the "Gevent compatible" debugger in pycharm, and since then pytest-pycharm stopped working. Disabling it will make pytest-pycharm work again. I hope this will solve the issue for some of you.
来源:https://stackoverflow.com/questions/40718760/unable-to-debug-in-pycharm-with-pytest