我的机器人关键字如下:
mean_test = test.mean()
limit = 5
df_filtered = test.mask(test.gt(mean_test.add(limit))|
test.lt(mean_test.sub(limit)),0)
print(df_filtered)
A B
0 0 0
1 20 40
2 0 0
3 15 0
4 0 0
在我的python_test.py中
${HW_list} Get_hw_list ${file}
Run process python python_test.py
我说错了
robot.libraries.BuiltIn.RobotNotRunningError:无法访问执行 上下文
我尝试搜索类似的问题,但是找不到错误的地方。我也有RF == 3.1.2,因为在1个帖子中,我认为此版本已解决了一个问题。
答案 0 :(得分:2)
Run process
将在单独的解释器中运行您的模块。这就是为什么它找不到执行上下文。
相反,请执行以下操作:
from robot.libraries.BuiltIn import BuiltIn
def my_custom_keyword():
List_of_modules = BuiltIn().get_variable_value("${HW_list}")
Library
导入您的机器人代码中:*** Settings ***
Library python_test.py
Run process
:${HW_list} Get_hw_list ${file}
My Custom Keyword
答案 1 :(得分:2)
由于python_test.py
是作为单独的进程运行的,因此不能在单独的进程中直接使用机械手变量或关键字。
如果您不想将值作为参数传递,则必须使用其他方法。例如,您可以设置环境变量,并让脚本从环境中拾取数据。这只能用于传递字符串。
另一种选择是让您的机器人脚本将数据写入文件或数据库,然后让脚本读取该文件或数据库以获取值。