我正在尝试为我分配变量的测试用例创建设置阶段。我知道为了做多个关键字,我需要使用Run Keywords
,但这样做是否可以设置变量?例如:
*** Test Cases ***
Case1
[Setup] Run Keywords
... ${var1}= Keyword1
... AND ${var2}= Keyword2
显然上述情况不起作用,因为${var1}
和${var2}
只被视为Run Keywords
的参数。由于它们尚未定义,因此设置失败。
答案 0 :(得分:2)
答案 1 :(得分:0)
您可以使用Set Suite Variable键盘来完成此操作。
set suite variable ${var1} Hello World
您可能需要转义变量...
set suite variable \${var1} Hello World
来自内置库文档:
如果新范围内已存在变量,则其值将被覆盖。否则,将创建一个新变量。如果变量已存在于当前范围内,则该值可以保留为空,新范围内的变量将获取当前范围内的值。
答案 2 :(得分:0)
这里的问题你为什么要这样做?
我这样做的方式,如果我想调用关键字并在变量中设置它们的输出 要在我的测试套件中重用它们,我会执行以下操作:
*** Settings ***
Library BuiltIn
Suite Setup Initialize Variables
*** Keywords ***
Initialize Variables
${Argument1} = Set Variable some_value
${output1} = Keyword1 ${Argument1}
${output2} = Keyword2
${output3} = Keyword3 ${Argument1} other_value
*** Test Cases ***
Test Case 1
# Here you can use the variables that you initialized in the Suite Setup.
Log ${output1}
Log ${output2}
Log ${output3}
Test Case 2
# Also here you can use the same variables.
No Operation
注意:如果要为每个测试用例设置变量,可以在设置部分中执行此操作:
*** Settings ***
Test Setup Initialize Variables
或者您可以使用测试用例本身的设置(与您在问题中的设置相同)
Test Case 1
[Setup] Initialize Variables
请注意,如果需要,“Initialize Variables”也可以使用参数。