我经常使用ipdb,以一种跳转到隔离代码块的方式,也就是说这很难编写一个真正使用它的脚本。相反,我会编写一个最小化的测试用例,并进行跳转。
这是工作流程的示例:
def func():
...
import ipdb
ipdb.set_trace()
...
def test_case():
...
func()
...
然后,调用
py.test test_file.py -s -k test_case
通常我只检查一两个变量,然后想要退出。更改代码然后重新开始。
如何退出?手册说q
可以退出调试器。但它并没有真正退出。您必须多次退出才能使调试器实际终止。 Ctrl-C和Ctrl-D的行为相同(还有一个额外的烦恼是连续按几次Ctrl-D会导致终端也退出)。
有没有一种聪明的方式来强制退出?这种工作流程是否合理?标准的操作方式是什么?