テストの目的に応じて、mablトレーナーでJavaScriptスニペットを利用して次のことを行うことができます。
これらの手法を使うと、個別のユースケースに合わせたカスタムJavaScriptステップを作成できます。
アプリケーションを操作する
JavaScriptステップを利用し、ブラウザーで前のページに戻るや位置情報を設定するといったカスタムアクションをアプリケーション内で実行します。
JavaScriptスニペットを実行するステップを作成するには、mablトレーナーで次の手順を実行します。
- +アイコンをクリックして、新しいステップを追加します。
- [JavaScript] を選択します。Trainerウィンドウに [スニペットを設定] メニューが表示されます。
- 既存のスニペットを選択するか、[新規] をクリックして新しいスニペットを作成します。
- 既存のスニペット: パラメーターがある場合は、必要に応じて値を更新します。
- 新しいスニペット: スニペットエディターでスニペットを記述します。
- [OK] をクリックします。スニペットがテストステップとして追加され、Trainerで実行されます。
変数を定義する
テスト内でデータを操作する必要がある場合は、JavaScriptステップの出力を変数として格納できます。次の手順を実行すると、JavaScriptスニペットの出力から変数を作成できます。
- Trainerウィンドウの下にある {x} アイコンをクリックします。
- [新しい変数を作成] をクリックします。
- ソースとして [JavaScript] を選択します。
- 既存のスニペットを選択するか、[新規] をクリックして新しいスニペットを作成します。
- 既存のスニペット: パラメーターがある場合は、必要に応じて値を更新します。
- 新しいスニペット: スニペットエディターでスニペットを記述します。
- スニペットが期待される値を出力することを確認するために、[実行] をクリックします。
- 変数に名前を付けます。
- [OK] をクリックします。Trainerウィンドウに新しい変数ステップが表示されます。
オブジェクト内の値へアクセスする
変数の値がオブジェクトの場合、ドット記法を使って、そのオブジェクト内の値を後続のテストステップで参照できます。
例えば、contact_info
という名前の変数が次の値を持っているとします。
{
"firstName": "John",
"lastName": "Doe",
"email": "john.doe@example.com"
}
そのオブジェクトから値を次のステップで取得するには、mablの変数構文とドット記法を組み合わせて使います。たとえば、{{@contact_info.firstName}}
のように記述します。オブジェクトから値を取得する他の例については、mablで日付を扱うの記事をご覧ください。
配列内の項目にアクセスする
変数の値が配列の場合は、後続のテストステップで配列内の特定の項目にアクセスするために配列インデックスを使ってください。
例えば、names
という変数が次の値を持っているとします。
["Alice", "Bob", "Charlie"]
その配列からアイテムを次のテストステップで参照するには、mablの変数構文と配列インデックスを組み合わせて使用します。例:{{@names[2]}}
。
条件を評価する
条件のコンテキストでスニペットを使用すると、スニペットの結果の真偽が評価され、条件を満たすかどうかが判定されます。
- スニペットの結果が真値 (truthy) の場合、条件ブロック内のステップが実行されます。
- スニペットの結果が偽値 (falsy) の場合、条件ブロック内のステップは省略されます。
条件付きステップにJavaScriptを使用するには、次の手順を実行します。
- +アイコンをクリックして、ステップを追加します。
- [条件付き] をクリックします。
- 追加する条件ステートメント (IFまたはELSE IF) を選択します。
- [JavaScript] を選択します。
- 既存のスニペットを選択するか、[新規] をクリックして新しいスニペットを作成します。
- 既存のスニペット: パラメーターがある場合は、必要に応じて値を更新します。
- 新しいスニペット: スニペットエディターでスニペットを記述します。
- [OK] をクリックします。Trainerウィンドウに新しい条件付きステップが表示されます。
このステップを記録した後、JavaScriptステップの条件がtrueと評価された場合に実行するステップを追加します。