出于学习目的,我想遵循机器人框架python库中的执行路径。 实际上是ssh library
这样做的最佳方式是什么?
我查看了debug lib,这似乎为我提供了设置断点并生成新shell的能力。但是,我想检查执行流程,堆栈和变量值集。像pudb这样的东西,但是通过pybot触发。这可能吗?
答案 0 :(得分:17)
您可以将pdb与机器人一起使用。如何执行此操作记录在机器人框架用户指南的标题为Using the python debugger (pdb)。
的部分中它给出的示例是将其添加到要设置断点的位置:
import sys, pdb; pdb.Pdb(stdout=sys.__stdout__).set_trace()
答案 1 :(得分:0)
由于我更喜欢使用ipdb而不是pdb,所以这是我与机器人配合使用的方式
import ipdb; ipdb.stdout.update_stdout(); ipdb.stdout.set_trace()
提示::出于某些原因,自动完成将无法使用pdb或ipdb进行操作,因此,如果您关心自动完成功能,则需要通过{{ 1}},然后将其添加到您的代码中
pdbpp
答案 2 :(得分:0)
您可以直接在机器人文件中进行调试,而无需创建关键字:
Evaluate pdb.Pdb(stdout=sys.__stdout__).set_trace() modules=sys, pdb