データテーブルを使用してテストを実行すると、さまざまなシナリオでアプリケーションの信頼性を検証できます。1つのシナリオをローカルに実行する場合でも、プラン実行で複数のシナリオを並列して実行する場合でも、mablではニーズに合わせた複数のオプションが利用できます。
この記事では、データテーブルシナリオをアドホックおよびプラン実行でテストを実行する方法を説明します。
開始する前に
データテーブルシナリオでテストを実行するには、まずデータテーブルをテストに関連付ける必要があります。
テストがアクセス権がないデータテーブルに関連付けられている場合、そのデータテーブルのシナリオで実行をトリガーすることはできません。この場合、テストを別のデータテーブルに関連付けてから、テストの実行をトリガーできます。
アドホック実行
mablでは、ローカルとクラウドの両方で、データテーブルシナリオを使用したアドホック実行をサポートしています。
ローカル実行
mabl CLIでは、mabl tests runコマンドを使ってデータテーブルシナリオを使用したローカル実行をトリガーできます。
- 1つのシナリオを実行する場合は、
--scenario-idオプションを使って適切なシナリオIDを指定します。 - すべてのシナリオを順次実行する場合は、
--data-table-idオプションを使って適切なDataTable IDを指定します。
mablデスクトップアプリでは、アドホック実行パネルからデータテーブルシナリオのローカル実行をトリガーできます。
- 実行するテストに移動します。
- [テスト実行] ボタンをクリックします。
- ローカル実行タブで「データテーブルシナリオを実行する」をオンにして、データテーブルを選択します。すべてのシナリオを実行するか、クラウド実行用に特定のシナリオを選択することができます。
- [実行開始] ボタンをクリックします。
クラウド実行
mablデスクトップアプリで、1つまたはすべてのデータテーブルのシナリオを対象に、アドホックのクラウド実行を開始できます。
- 実行するテストに移動します。
- [テスト実行] ボタンをクリックします。
- [クラウド実行] タブで、[データテーブルシナリオを実行する] をオンにして、データテーブルを選択します。すべてのシナリオを実行することも、特定のシナリオを選択してクラウド実行を行うこともできます。
- [実行開始] ボタンをクリックします。
データテーブルが選択されている場合は、トリガーされる実行数 (シナリオ数) が [Start run] ボタンに反映されます。クラウドですべてのシナリオを実行する場合、テストは並列実行されます。
mabl MCPを使用して、AIクライアントから1つのシナリオまたはすべてのシナリオに対するクラウド実行をトリガーすることもできます。
プラン実行
データテーブルシナリオがプランで実行される場合、プランステージ設定によってシナリオの実行方法が決まります。
- 並列: シナリオが同時に実行されます
- Sequential: シナリオが1つずつ実行されます
デフォルトでは、プラン実行はテストに関連付けられたすべてのデータテーブルシナリオを実行します。
データテーブルシナリオを実行するプランで複数のブラウザを設定する場合は、注意してください。プランは、設定されたブラウザの数とデータテーブルシナリオの数を掛け合わせた回数だけテストを実行します。たとえば、プランがChromeとFirefoxで実行されるように設定されていて、7つのシナリオを持つデータテーブルに関連付けられたテストが含まれている場合、そのデータテーブルに関連するテストだけで14回の実行が行われます。
プランの実行中に実行するシナリオの数を制限するには、次のいずれかの方法を使用します。
- 特定のデータテーブルシナリオを使用する
- すべてのデータテーブルシナリオを無視する
特定のデータテーブルシナリオを使用する
プランの実行で特定のデータテーブルまたはデータテーブルシナリオのみを実行するには、プランを編集ページを開きます。テストセクションで、テストを表示をクリックし、編集したいテストのテスト変数ボタンをクリックします。
テスト変数を編集する
テスト変数パネルで、+ パラメータを追加をクリックし、タイプフィールドを「データテーブル」に設定します。すべてのシナリオまたは特定のシナリオを実行するようにプランを設定できます。
特定のシナリオには、2つのオプションがあります:
- 動的: 実行するシナリオを自然言語で記述します。例えば、「プレフィックスが 'EN' のすべてのシナリオを実行する」や「user_role が 'admin' のすべてのシナリオを実行する」などです。mablはプランを実行するたびに、この記述を再評価します。動的なシナリオの記述を書くをご覧ください。
- 静的:特定のシナリオを手動で選択します。
プランの実行で特定のシナリオを選択する
動的なシナリオの記述を書く
mablは、記述を各シナリオに対して個別に評価します。シナリオは、そのシナリオ自身の列の値が記述に一致する場合に選択されます。そのため、記述は1つの行の値に対する条件として書いてください。
「変数 VPN の値が 'VPN Missing' であるシナリオのみを実行する」
「region が Americas で、market が CAN_Market のシナリオ」
シナリオ同士を比較する必要がある記述はサポートされておらず、プランを実行するたびに異なるシナリオのセットが返される可能性があります。
- 位置に基づくもの: 「最初の3つのシナリオ」「最後のシナリオ」「1つおきのシナリオ」
- 比較に基づくもの: 「最も安いプラン」「価格が最も高いシナリオ」
- 集計に基づくもの: 「電子メールが重複している行」
固定されたシナリオのセットや位置で指定したシナリオを実行する場合は、代わりに静的な選択を使用してください。
引用符で囲んだテキストは、大文字と小文字の区別やスペースを含め、テーブルの値と完全に一致している必要があります。テーブル内の値に VPN MIssing のような誤字がある場合は、テーブルに表示されているとおりに引用してください。
保存する前に、[テスト] をクリックして、特定されたシナリオの数を確認してください。変更されていないテーブルに対して同じ記述を使用すると、同じ数が返されます。テストするたびに数が変わる場合、その記述は相対的またはあいまいである可能性があります。
データテーブルを無視する
特定のプランでテストがデータテーブルを使用しないようにするには、編集したいプランに移動し、鉛筆アイコンをクリックしてプランを編集ページを開きます。テストセクションでテストを表示をクリックし、対象のテストのテスト変数の鉛筆アイコンをクリックします。
テスト変数を編集する
テスト変数パネルで、+ パラメータを追加をクリックし、タイプ フィールドを "Ignore DataTables" に設定します。このパラメータにより、テストは関連付けられたデータテーブルを使用しません。代わりに、テストはデフォルトのデータドリブン変数で一度だけ実行されます。
データテーブルを無視
実行時のデータテーブル
mabl は、プラン実行がトリガーされた時点で利用可能なデータテーブルのバージョンを使用します。プラン実行の開始後にデータテーブルへ加えた更新は、その特定のプラン実行で実行されるテストには反映されません。