小编Jef*_*eff的帖子

在表达式中使用变量时出现“名称未定义”错误

我正在尝试使用从命令行传入变量的单个测试用例来测试多个环境。使用以下命令行:

robot --variable TESTENV:prod advertisingdisclosure_Page.robot
Run Code Online (Sandbox Code Playgroud)

我需要测试 TESTENV 的值,并根据传入的值将不同的变量(特别是 URL)设置为适当的值。在测试用例的第一个关键字部分中使用以下代码时,我收到错误:

IF   ${TESTENV}  ==  "uat"
    $(MAIN_URL)=    Set Variable    ${env_data['uat_url']}
ELSE IF    ${TESTENV}  ==  "dev"
    ${MAIN_URL}=   Set Variable   ${env_data['dev_url']}
ELSE IF    ${TESTENV} == "prod"
    ${MAIN_URL}=   Set Variable   ${env_data["prod_url"]}
ELSE
    Fail    "No URL specified"
END
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

Evaluating expression 'prod' failed: NameError: name 'prod' is not defined nor importable as module
Run Code Online (Sandbox Code Playgroud)

我找到的示例展示了如何直接使用全局变量,但没有展示如何评估它的特定值。

帮助。

杰夫

robotframework

2
推荐指数
1
解决办法
4980
查看次数

标签 统计

robotframework ×1