【发布时间】:2017-01-02 21:45:10
【问题描述】:
我想使用 ipdb 而不是 pdb 和 py.test --pdb 选项。这可能吗?如果有,怎么做?
显然,我可以在代码中使用import ipdb; ipdb.set_trace(),但这需要运行测试,观察它失败,打开一个文件,在所述文件中找到故障点,写下上面的行,重新运行测试。如果我能有一些东西可以绕过所有这些,那就太麻烦了。
【问题讨论】:
我想使用 ipdb 而不是 pdb 和 py.test --pdb 选项。这可能吗?如果有,怎么做?
显然,我可以在代码中使用import ipdb; ipdb.set_trace(),但这需要运行测试,观察它失败,打开一个文件,在所述文件中找到故障点,写下上面的行,重新运行测试。如果我能有一些东西可以绕过所有这些,那就太麻烦了。
【问题讨论】:
你试过pytest-ipdb吗?
看起来正是您要找的东西?
【讨论】:
使用此选项设置自定义调试器:
--pdbcls=IPython.terminal.debugger:Pdb
也可以使用addopts将其包含在pytest.ini中:
[pytest]
addopts = "--pdbcls=IPython.terminal.debugger:Pdb"
【讨论】:
--pdb 标志
[tool.pytest.ini_options] addopts = "--pdbcls=IPython.terminal.debugger:Pdb"