你能在运行时用Robot Framework声明变量吗?

时间:2017-04-17 16:04:53

标签: robotframework

我目前有一系列功能测试,我希望能够在运行时声明2个选项中的1个。这些测试目前正在使用XVFB并无头地运行。

操作浏览器的当前代码是:

Start Virtual Display and enter the URL
    [Documentation]  Test creates virtual display using XVFB
    [Arguments]    ${URL}
    start virtual display  1440  900
    Open Browser  ${URL}
    set window size  1440  900
    sleep  ${delay}

如果我注释掉start virtual display 1440 900步骤,测试用例将自动调用本机浏览器来执行测试步骤。

我希望有一种“简单的方法”来评论或取消注释start virtual display测试步骤 - 可能会将其声明为变量?

3 个答案:

答案 0 :(得分:2)

您可以从命令行设置变量:http://robotframework.org/robotframework/latest/RobotFrameworkUserGuide.html#setting-variables-in-command-line

还不够吗?

根据您的代码示例进行修改:

Start Virtual Display and enter the URL
    [Documentation]  Test creates virtual display using XVFB
    [Arguments]    ${URL}
    Run Keyword If    '${vd}' == 'TRUE'    Start Virtual Display    1440    900
    Open Browser    ${URL}
    Set Window Size    1440    900
    Sleep    ${delay}

然后使用--variable vd:TRUE

调用您的测试

答案 1 :(得分:0)

在您更新的问题中,在我看来,您正在寻找Run Keyword If功能,这将允许您在启动RF时使用命令行上指定的变量的值来确定脚本的执行。有关运行关键字的更多信息如果可以找到here

答案 2 :(得分:0)

您可以创建两个测试用例,第一个没有 启动虚拟显示1440 900 。 以及您设置为使用 启动虚拟显示1440 900 关键字

的其他测试