调试机器人框架 python 个关键字库

Debugging robot framework python keyword libraries

出于学习目的,我想遵循机器人框架 python 库中的执行路径。 实际上 ssh library

最好的方法是什么?

我查看了 debug lib ,它似乎为我提供了设置断点和生成新 shell 的能力。但是我想检查执行流程、堆栈和变量值集。类似于 pudb,但通过 pybot 触发。这可能吗?

您可以将 pdb 与机器人一起使用。机器人框架用户指南中标题为 Using the python debugger (pdb).

的部分中记录了如何执行此操作

它给出的例子是在你想设置断点的地方加上这个:

import sys, pdb; pdb.Pdb(stdout=sys.__stdout__).set_trace()

因为我更喜欢使用 ipdb 而不是 pdb,所以这是我将它与 robot 一起使用的方法

import ipdb; ipdb.stdout.update_stdout(); ipdb.stdout.set_trace()

提示: 由于某些原因,autocomplete 无法使用 pdb 或 ipdb,所以如果你关心自动完成,你需要安装pdbpp 通过 pip install pdbpp 然后将其添加到您的代码中

import sys
import pdb
for attr in ('stdin', 'stdout', 'stderr'):
    setattr(sys, attr, getattr(sys, '__%s__' % attr))
pdb.set_trace()

您可以直接在机器人文件中进行调试,无需创建关键字:

Evaluate    pdb.Pdb(stdout=sys.__stdout__).set_trace()    modules=sys, pdb

https://robotframework.org/robotframework/latest/RobotFrameworkUserGuide.html#using-the-python-debugger-pdb