はじめに
robotframeworkでテストケース内の変数はローカルスコープで他のテスト結果で共有することができません。
ですが、一部結果を他のテストケースでも使いたい事がありやり方を調べました。
他のプログラムでもあるようにグローバル変数が使えるようです。
サンプルコード
テストケースの結果を別のテストコードで共有する一つの方法としてグローバル変数を使った例です。
以下が簡単なサンプルコードです。
# global_variable_test_correct.robot
*** Settings ***
Library String
*** Test Cases ***
テスト1
Set global variable ${str} "test"
Log to Console ${\n}テストケース1のstr:${str}
テスト2
Log to Console ${\n}テストケース2のstr:${str}
グローバル変数の宣言は
Set global variable ${str} “test”
で行います。
Set global variableでグローバル変数の宣言、
変数名、
代入したい値
を指定します。
これを実行すると
==============================================================================
Global Variable Test Correct
==============================================================================
テスト1 .
テストケース1のstr:"test"
テスト1 | PASS |
------------------------------------------------------------------------------
テスト2
テストケース2のstr:"test"
テスト2 | PASS |
------------------------------------------------------------------------------
Global Variable Test Correct | PASS |
2 tests, 2 passed, 0 failed
==============================================================================
本来なら変数はそのテストケースの中でしか使えない(ローカルスコープ)ですが、別のテストケースでも使えている事が分かると思います。
さいごに
今回はグローバル変数の使い方についてでした。
グローバル変数を使うには「Set global variable」という事でした。
グローバル変数は色々なところで値を変更出来るようになるので便利な一方思わぬバグなどの原因にもなるので使い方には注意が必要です。
この記事がお役にたったのなら嬉しいです。