Comments (5)
Looks like this is a pytest-cov / debugpy limitation. See microsoft/debugpy#863 (comment)
from nvim-dap-python.
The debugger works when I'm inside a non-test, main()
function, set a breakpoint, and do lua require'dap'.continue()
, so maybe there's something wrong with pytest setups specifically?
from nvim-dap-python.
I'm having a similar issue. Configured nvim-dap-python
with examples from the docs
local mason_path = vim.fn.glob(vim.fn.stdpath "data" .. "/mason/")
require("dap-python").setup(mason_path .. "packages/debugpy/venv/bin/python")
require("dap-python").test_runner = "pytest"
-- mappings
lvim.builtin.which_key.mappings["dm"] = { "<cmd>lua require('dap-python').test_method()<cr>", "Test Method" }
lvim.builtin.which_key.mappings["df"] = { "<cmd>lua require('dap-python').test_class()<cr>", "Test Class" }
When invoking the test_method
-action in a pytest-unittest file, the debugger starts as expected, but does not stop at breakpoints. Same as for the others, the debugger and breakpoints work fine when used in "normal" python modules.
from nvim-dap-python.
A minimal example with reproduction steps would be good.
Using a simple:
def inc(x):
return x + 1
def test_answer():
assert inc(3) == 5
And running :lua require('dap-python').test_method()
with the cursor in test_answer
, test_runner
set to pytest
, and a breakpoint in the inc
body works fine for me.
from nvim-dap-python.
Sorry for the late reply, I didn't find time to test it earlier.
I found out what broke it for me. I'm using a poetry environment in which all dev-tools are configured via the pyproject.toml
. PyTest is also configured in there:
[tool.pytest.ini_options]
addopts = "--cov" # <-- no stopping at breakpoints with --cov
testpaths = ["tests"]
When the --cov
is added nvim-dap-python does not stop at breakpoints, when I remove it it works fine.
from nvim-dap-python.
Related Issues (20)
- crash on input()
- unintuitive configuration on Windows HOT 1
- debugging a flask application crashes before starting HOT 1
- Provide more configuration examples HOT 1
- Windows venv detection HOT 3
- Custom visualization of dataframes HOT 2
- how to debug with arguments?
- Debugpy - Windows HOT 4
- ModuleImportError when running from Pyenv HOT 6
- [Feature Request] `test_file`, `test_dir` & `test_all` HOT 2
- Help needed for compatibility with nvim-lua/kickstart HOT 1
- `os.fork` indefinitely waiting HOT 1
- Django and multiprocess HOT 8
- regression on detection of python bin HOT 1
- Debugging pytest test method fails on dap.continue() but works with dep.test_method() HOT 3
- type python deprecated in favor of debugpy HOT 2
- DAP `test_method` not uses `VIRTUAL_ENV` path HOT 2
- python not found in virtual environment HOT 4
- how to debug main method using pytest HOT 2
- Changing quotes HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from nvim-dap-python.