我需要在testSuite#1中设置一个变量。在testSuite#2中使用上述变量。
我们有任何关键字吗?我们可以在命令行导出它吗?
答案 0 :(得分:3)
使用BuiltIn' Set Global Variable。应尽可能避免这种情况,但有时是必要的。
Set Global Variable ${MYPROJ_ADMIN_PASSWORD} supersecret123
答案 1 :(得分:2)
这不是一个好主意,因为您最终会在两个套件之间产生依赖关系,并依赖于套件运行的顺序。
话虽如此,有几种方法可以实现这一目标。
第一种方法是使用内置库中的Set Global Variable关键字。
| | Set global variable | ${foobar} | this is foobar
第二种方法是使用environment variable库设置可以在两个套件之间共享的OperatingSystem。
suite1.robot
*** Settings ***
| Library | Operating System
*** Test Case ***
| Save a variable that other suites can see
| | Set environment variable | foobar | this is foobar
suite2.robot
*** Settings ***
| Library | OperatingSystem
*** Test Cases ***
| Use a variable from another suite
| | Should be equal | %{foobar} | this is foobar
请注意,使用%
代替$
来访问变量。您还可以使用Get Environment Variable来获取一个或多个变量的值。
答案 2 :(得分:0)
检查以下摘录的代码示例-
*** Settings ***
Library BuiltIn
*** Test Cases ***
TC1
.....
${test}= ${temp}
Set Global Variable ${test}
TC2
Log to Console \n Global variable value is ${test}
参考:https://robotframework.org/robotframework/latest/libraries/BuiltIn.html