在Robot Framework中返回两个值

kam*_*ame 3 variables automated-tests return function robotframework

是否有可能在Robot Framework中返回两个变量?

${result1}, ${result2}=    MyKeyword
Run Code Online (Sandbox Code Playgroud)

不起作用.

Bry*_*ley 10

是的,只需在分配时和返回值时将变量放在单独的单元格中.

例如:

*** Test Case ***
Example
    ${value1}    ${value2}    return two values
    Should be equal    ${value1}    this is value 1
    Should be equal    ${value2}    this is value 2


*** Keywords ***
Return two values
    ${v1}=      set variable    this is value 1
    ${v2}=      set variable    this is value 2

    [Return]    ${v1}    ${v2} 
Run Code Online (Sandbox Code Playgroud)


shi*_*cky 6

去除 ,

${result1}    ${result2}    =    MyKeyword
Run Code Online (Sandbox Code Playgroud)

  • 还有一个等号的问题。 (2认同)
  • 我意识到这篇文章已经过去一年了,但这里的答案在语法上有点不正确。“=”与其左侧变量之间的空格不能超过 1 个(零个空格也可以)。任何更多空格都会导致 Robot 将等号视为不同的关键字(这将失败)。不幸的是,由于SO认为编辑太微不足道,所以我无法删除这些空格。 (2认同)

Set*_*eth 5

${result1}    ${result2} =    MyKeyword
Run Code Online (Sandbox Code Playgroud)

为我工作。

${result1}    ${result2}    =    MyKeyword
Run Code Online (Sandbox Code Playgroud)

给我:

No keyword with name '=' found.
Run Code Online (Sandbox Code Playgroud)

如果重要的话,我只使用空格,不使用制表符。