我有一个包含以下变量的python库(bar_variables):
from bar_class import *
foo = bar_class()现在,在robot中,我有以下代码:
Variables bar_variables.py
Setup
${variable1}= Set Variable ${foo}
${variable2}= Set Variable foo
${variable3}= Evaluate ${variable2}变量1具有正确的对象,在执行variable3时,我得到以下错误:
Evaluating expression 'foo' failed: NameError: name 'foo' is not defined如果我在python中尝试同样的方法,它可以工作:
from bar_variables import *
variable2 = 'foo'
variable3 = eval(variable2)在python中,variable3有正确的对象,而在robot中则不起作用
机器人版本为:
>pybot --version
Robot Framework 3.0.2 (Python 2.7.13 on win32)发布于 2017-09-06 20:03:26
使用变量文件导入的变量不存在于使用Evaluate运行代码的上下文中。尽管您在变量文件中定义了foo,但Evaluate运行的代码对该变量一无所知。
你在问题中描述的是机器人是如何工作的。
https://stackoverflow.com/questions/46072990
复制相似问题