ここでは、テストケースAで保存した変数をテストケースBへ受け渡して使用するための、2つの方法について解説します。
なお、あらかじめ定義した変数を複数のテストケース間で共通して使用したい場合は、共有変数の利用をご検討ください。
また、可変値の受け渡しが必要な処理がテストケースA・Bに分かれている場合でも、ステップ数が多くなりすぎないようであれば、1つのテストケースに統合するのも有効な方法です。
1. Local Storageのコマンドを使用する方法
1つ目の方法は、Local Storageを利用する方法です。MagicPodでは以下のコマンドが用意されています:
これらを活用することで、テストケース間で変数の値を受け渡すことが可能です。
使用手順:
-
テストケースA(値を渡す側)で Local Storageに値をセット コマンドを挿入します。
-
テストケースB(値を受け取る側)で Local Storageの値を保存 コマンドを挿入し、値を取得します。
※このとき、テストケースBにおいては、ブラウザの起動オプションにて「初回のみプロセス再起動」を必ず選択してください。
なお保守性の観点から、テストケースBにおける値を受け取る処理はテストケースの冒頭に配置すると、他のテストケースに依存していることが明確になり、管理しやすくなります。
2. Web APIを使用する方法
もう1つの方法として、Web APIを用いた方法もあります。
1つ目のテストケースにて、渡したい変数の値をPOSTリクエストによりAPIサーバーに送信し、2つ目のテストケースにて、GETリクエストによりその値をAPIサーバーより受け取ることで、2テストケース間で変数の受け渡しを行います。
この方法では、Web APIの作成が必要となります。以下、一連の流れを記載します。
-
Web APIを作成する
APIサーバーおよび、変数を送る「POSTリクエスト 」および、変数を受け取る「GETリクエスト」をそれぞれ作成します。
-
テストケース A:変数を保存・APIへ送信
(1) 変数に値を保存
例としてここでは、現在時刻を元に生成したユニークな値を保存 コマンドを用いて、現在時刻をもとにしたユニークな文字列を作成し、変数
USER_IDに保存します。USER_ID = 20250708045743
(2) Web APIに変数を送信(POST)
次に、Web APIコール コマンドで、保存した変数の値をWeb APIに送信します。
・メソッド:
POST・URL:
https://<your-api-server-domain>/users・ボディ:
{ "key": "user_id", "value": "${USER_ID}" }このリクエストにより、指定されたキー(例:
user_id)に対応する値がサーバー側に一時保存されます。 -
テストケース B:APIから値を取得して再利用
(1) Web APIから変数を取得(GET)
テストケース B では、先ほど保存された値を Web APIコール コマンドで取得します。
・メソッド:
GET・URL:
https://<your-api-server-domain>/users・ヘッダー:
キー:Content-Type 値:application/json
・結果:
変数:USER_ID Javascript:jsonResponse["users"][0]["user_id"]
jsonRenponse["users"][0]["user_id"]では、POSTリクエストにより送信されたユーザーIDのなかで最新のものを取得しています。(2) 変数を使用
取得した
${USER_ID}を以降のテストステップで使用します。
Web APIを使用したテストケース間で変数を受け渡す方法の説明は以上となります。