Robot Framework組み込み変数
Robot Frameworkは直接利用可能な組み込み変数を提供します
1.オペレーティングシステム関連の変数
組み込みのオペレーティングシステム関連の変数。オペレーティングシステム間の違いに対するテストデータの注意を減らします。
RFで使用可能なオペレーティングシステム関連の組み込み変数は次のとおりです。
可変 | 用途 |
$ {CURDIR} | テストデータファイルが配置されているディレクトリの絶対パス。このパラメーターでは大文字と小文字が区別されます |
$ {TEMPDIR} | オペレーティングシステムの一時ディレクトリの絶対パス。Unixのようなシステムでは、パスは通常/ tmpです。Windowsシステムでは、通常はc:\ Documents and Settings \ <user> \ Local Settings \ Temp |
$ {EXECDIR} | テストが開始されたディレクトリへの絶対パス |
$ {/} | オペレーティングシステムのファイルパス区切り文字、Unixライクシステムの場合: '/'、Windowsの場合: '\' |
$ {:} | Unixライクなシステムの場合、オペレーティングシステムのパス要素の区切り文字: ':'、Windowsの場合: ';' |
$ {\ n} | オペレーティングシステムの行区切り文字、Unixライクシステムの場合: '\ n'、Windowsの場合: '\ r \ n' |
*** Test Cases ***
Example
Create Binary File ${CURDIR}${/}input.data Some text here${\n}on two lines
Set Environment Variable CLASSPATH ${TEMPDIR}${:}${CURDIR}${/}foo.jar
2.数値変数
次の例に示すように、可変構文を使用して整数データと浮動小数点データを作成できます。この数値変数の作成方法は、キーワードとして、対応する数値文字列ではなく実数がパラメーターとして必要な場合に役立ちます。
*** Test Cases ***
Example 1A
Connect example.com 80 # Connect 获得两个字符串作为参数
Example 1B
Connect example.com ${80} # Connect 获得一个字符串和一个整数作为参数
Example 2
Do X ${3.14} ${‐1e‐4} # Do X 获得浮点数 3.14 和 ‐0.0001 作为参数
2進数、8進数、16進数の値から整数を作成することもできます。作成するときは、対応するプレフィックスとして0b、0o、0xを使用します。この構文では大文字と小文字は区別されません。
*** Test Cases ***
Example
Should Be Equal ${0b1011} ${11}
Should Be Equal ${0o10} ${8}
Should Be Equal ${0xff} ${255}
Should Be Equal ${0B1010} ${0XA}
3.ブール変数とNone / null変数
ブール値、PythonのNone、Javaのnull変数も、数値変数を作成するための同様の構文で作成できます。
*** Test Cases ***
Boolean
Set Status ${true} # Set Status 获得布尔值 true 作为参数
Create Y something ${false} # Create Y 获得字符串和布尔值 false 作为参数
None
Do XYZ ${None} # Do XYZ 获得 Python None 作为参数
Null
${ret} = Get Value arg # Checking that Get Value returns Java null
Should Be Equal ${ret} ${null}
これらの変数も大文字と小文字を区別しないため、$ {True}と$ {true}は同じです。さらに、$ {None}と$ {null}は同義語です。これは、ユースケースがJythonインタープリターで実行されると、Jythonが自動的にNoneとnullを正しい形式に変換するためです。
4.スペースと空(空)の変数
$ {SPACE}と$ {EMPTY}を使用して、それぞれスペースと空の文字列変数を作成できます。これらの変数は非常に便利です。これらの変数を使用しない場合は、スペースまたは空のセルをエスケープする必要があります。複数のスペースが必要な場合は、次のように拡張変数構文を使用して簡単に取得できます:$ {SPACE * 5}。次の例では、Equal Be Equalキーワードによって取得されるパラメーター値は同じですが、変数の使用方法は、「\」エスケープの使用方法よりも理解しやすいことは明らかです。
*** Test Cases ***
One Space
Should Be Equal ${SPACE} \ \
Four Spaces
Should Be Equal ${SPACE * 4} \ \ \ \ \
Ten Spaces
Should Be Equal ${SPACE * 10} \ \ \ \ \ \ \ \ \ \ \
Quoted Space
Should Be Equal "${SPACE}" " "
Quoted Spaces
Should Be Equal "${SPACE * 2}" " \ "
Empty
Should Be Equal ${EMPTY} \
还有两个变量 @{EMPTY} 和 &{EMPTY},他们分别表示 ‘空列表’ 和 ‘空字典’ 变量。 这两个变量也是有用的,例如在写测试模板的时候,模板关键字不带参数使用时。
*** Test Cases ***
Template
[Template] Some keyword
@{EMPTY}
Override
Set Global Variable @{LIST} @{EMPTY}
Set Suite Variable &{DICT} &{EMPTY}
5.自動変数
テストデータで使用できる自動変数もいくつかあります。これらの変数は、テスト中に異なる値になる可能性があり、一部の変数は常に利用できない場合もあります。
可変 | 説明する | 使用場所 |
$ {テスト名} | 現在のテストケースの名前 | テストケース |
@ {テストタグ} | 現在のテストケースでマークされたすべてのマークは、アルファベット順に配置されます。タグの設定およびタグの削除キーワードを使用して、動的に変更できます。 | テストケース |
$ {テストドキュメント} | 現在のテストケースのドキュメントは、Set Test Documentationキーワードを使用して動的に変更できます。 | テストケース |
$ {テストステータス} | 現在のテストケースの実行ステータス、PASSまたはFAIL | テストケースの分解時 |
$ {テストメッセージ} | 現在のテストケースに関する情報 | テストケースの分解時 |
$ {前のテスト名} | 前のテストケースの名前。テストケースが実行されていない場合、値は空です。 | すべての場所 |
$ {前のテストステータス} | 前のテストケースの実行ステータス、PASS / FAIL。テストケースが実行されていない場合、値は空です。 | すべての場所 |
$ {前のテストメッセージ} | 前のテストケースの実行によって生成される可能性のあるエラーメッセージ | すべての場所 |
$ {スイート名} | 現在のテストスイートの完全な名前 | すべての場所 |
$ {スイートソース} | 現在のテストスイートファイルまたはディレクトリの絶対パス | すべての場所 |
$ {スイートドキュメント} | 現在のテストスイートのドキュメントは、Set Suite Documentationキーワードを使用して動的に変更できます。 | すべての場所 |
&{スイートメタデータ} | 現在のテストスイートのメタデータ | すべての場所 |
$ {スイートステータス} | 現在のテストスイートの実行ステータス、PASSまたはFAIL | テストスイートの分解 |
$ {継続メッセージ} | 統計を含む、現在のテストスイートに関するすべての情報 | テストスイートの分解 |
$ {KEYWORD STATUS} | 現在の重要な実行ステータス、PASSまたはFAIL | ユーザーキーワードの分解 |
$ {KEYWORD MESSAGE} | 現在のキーワードが実行されたときに生成される可能性のあるエラーメッセージ | ユーザーキーワードの分解 |
$ {ログレベル} | 現在のログレベル | すべての場所 |
$ {出力ファイル} | 出力ファイルへの絶対パス | すべての場所 |
$ {ログファイル} | ログファイルへの絶対パス、またはログファイルが作成されていない場合はNONE | すべての場所 |
$ {レポートファイル} | テストレポートファイルへの絶対パス、またはテストレポートファイルが作成されていない場合はNONE | すべての場所 |
$ {デバッグファイル} | デバッグファイルへの絶対パス、またはデバッグファイルが作成されていない場合はNONE | すべての場所 |
$ {出力ディレクトリ} | 出力ディレクトリへの絶対パス | すべての場所 |