2011-09-28 6 views
10

キーワードを実行した後に結果を返すにはどうすればよいですか?Robot Frameworkキーワードで結果を返しますか?

例:

mykey word [Arguments] input 
    ${results}= getme input 

しかし、私はこの結果を使用したい:

${results} = mykey word newinput 
+1

質問を明確にしてください。 – Argote

+0

RFに関する最も重要なことは、これまでに他の言語でプログラミングしたことがあるなら、そのことを知らないふりをすることです。 (問題の言語がBASICの場合を除き、その場合は問題ありません) –

答えて

23

ロボットフレームワークのユーザーガイドがキーワードから値を返す方法について説明します。 User keyword return values

短いバージョンは、キーワードに変数を設定し、その変数を返すために[return]テストケース設定を使用することです。

パイプ区切りテキスト形式を使用して実施例:

*** Keywords *** 
| mykey word 
| | [Arguments] | ${input} 
| | ${string}= | set variable | the string is "${input}" 
| | [return] | ${string} 

*** Test Cases *** 
| Call custom keyword and get result 
| | ${results}= | mykey word | newinput 
| | log | ${results} 
3

例である結果を返すために、[戻る]を使用:$ {TIME_STAMP}の

Time Stamp 

     [Return] ${time_stamp} 
     ${secs}= Get Time epoch 
     ${time}= Get Time 
     ${time_stamp}= Convert To String  ${secs} 

バリューに格納されるのタイムスタンプキーワード

6

は簡単な例では、役立つことがあります。

*** Keywords *** 
Convert temperature F To Centigrade 
    [Arguments] ${ftemp} 
    ${ftemp} = Convert To Float ${ftemp} 
    ${ctemp} = ${0.9} * ${ftemp} - ${32} 
    [Return] ${ctemp} 

Convert temperature C To Fahrenheit 
    [Arguments] ${ctemp} 
    ${ctemp} = Convert To Float ${ctemp} 
    ${ftemp} = ${1.8} * ${ctemp} + ${32} 
    [Return] ${ftemp} 

*** Test Cases *** 
Verify Temperature Conversion 
    ${result} = Convert temperature F To Centigrade ${32} 
    Should Be Equal ${result} ${0} 
    ${result} = Convert temperature C To Fahrenheit ${0} 
    Should Be Equal ${result} ${32} 
0
#This Example will explain the usage of build in library Keywords 
#"Evaluate" ,"Log" and "Return" Setting by using Fahrenheit To Centigrade 
#conversion logic on the variable ${var1} 

*** Variables *** 
${var1}  32 
*** Keywords *** 
Convert temperature Fahrenheit To Centigrade 
    [Arguments] ${ftemp} 
    ${ftemp} = Convert To Number  ${ftemp} 
    ${ctemp} = evaluate (5 * (${ftemp} - 32))/9 
    [Return] ${ctemp} 


*** Test Cases *** 
Verify Temperature Conversion F to C 
    ${result} = Convert temperature Fahrenheit To Centigrade ${var1} 
    Log ${result} 
    Should Be Equal As Numbers ${result} 0.0 
+0

あなたの答えを編集して、他の人が簡単に理解できるようにするための説明や情報を追加してください – koceeng

0

他の方法もありますが、キーワードの最後に[返信]タグを使用するのが最も簡単な方法です。

キーワードグローバル変数を使用すると、キーワード自体から何も返さずに、実行されているキーワードの外部で変数にアクセスできるようにすることができます。これは、主な変数リストが乱雑にならないようにし、いくつかの変数をバックグラウンドで使用したい場合に便利ですが、グローバル変数と同じように注意して使用してください。

関連する問題