首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >评估库中的变量

评估库中的变量
EN

Stack Overflow用户
提问于 2017-09-06 18:32:37
回答 1查看 59关注 0票数 0

我有一个包含以下变量的python库(bar_variables):

代码语言:javascript
复制
from bar_class import *

foo = bar_class()

现在,在robot中,我有以下代码:

代码语言:javascript
复制
Variables bar_variables.py

Setup
    ${variable1}=    Set Variable    ${foo}
    ${variable2}=    Set Variable    foo
    ${variable3}=    Evaluate    ${variable2}

变量1具有正确的对象,在执行variable3时,我得到以下错误:

代码语言:javascript
复制
Evaluating expression 'foo' failed: NameError: name 'foo' is not defined

如果我在python中尝试同样的方法,它可以工作:

代码语言:javascript
复制
from bar_variables import *

variable2 = 'foo'
variable3 = eval(variable2)

在python中,variable3有正确的对象,而在robot中则不起作用

机器人版本为:

代码语言:javascript
复制
>pybot --version
Robot Framework 3.0.2 (Python 2.7.13 on win32)
EN

回答 1

Stack Overflow用户

发布于 2017-09-06 20:03:26

使用变量文件导入的变量不存在于使用Evaluate运行代码的上下文中。尽管您在变量文件中定义了foo,但Evaluate运行的代码对该变量一无所知。

你在问题中描述的是机器人是如何工作的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46072990

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档