初めてのデータ駆動型テスト

データ駆動型変数を用いてテストを作成し、DataTableを生成して、異なる複数の入力によってテストを再利用する

ローカリゼーション、検索の検証、場所別の出荷合計など、複数のデータセットを使用するアプリケーションの機能をテストする必要がある場合は、データ駆動型テストを使うと時間を節約できます。すべてのバリエーションを手作業でテストする代わりに、テストを1つだけ作成し、DataTableを使って毎回異なる入力でテストを繰り返し利用できます。

このチュートリアルでは、テストの作成からDataTableを生成して同じテストを複数回実行し、大規模なテストカバレッジを実現するまでの、mablでのデータ駆動型テストの設定方法について説明します。

📘

開始する前に

mabl Trainerに慣れていない方は、このチュートリアルを実行する前に初めてのブラウザーテストのチュートリアルを実行することをお勧めします。

データ駆動型変数を使ったテスト

このチュートリアルでは、さまざまな言語でWikipediaの検索機能を検証するテストを作成します。

データ駆動型テストの出力

データ駆動型テストの出力

このチュートリアルを開始する前に、次の手順で、[Configuration] > [Applications]に移動してワークスペースをセットアップします。

  • 新しい環境を作成し、"Demo"という名前を付けます。別のチュートリアルですでに "Demo"という環境を作成している場合、このステップは省略しても構いません。

  • "Wikipedia"(https://www.wikipedia.org/)という名前の新しいアプリケーションを作成し、"Demo"環境に割り当てます。

新しいブラウザーテストの作成

新しいブラウザーテストを作成し、[No plan]を選択して、先ほど作成したWikipediaアプリケーションをテストに関連付けます。

👍

命名規則とラベル

チームでは、ワークスペース内で練習用のテストとその他のテストを区別するのに使用できる命名規則とラベルについて話し合っておきます。以下のような例を検討してください。

  • 命名規則: 「ウォークスルー - データ駆動型テスト - 各自の名前」
  • ラベル: 「チュートリアル」、「ウォークスルー」、「練習用」は、練習用のテストを区別するのに適したラベルです。
新しいテストの作成

新しいテストの作成

[Create test] をクリックして、mabl Trainerを起動します。

テストのトレーニング

[Rec]ボタンをオンにして、以下のテストステップを記録し、スペイン語でのWikipediaの検索機能を検証します。

  1. 検索バーの言語選択ツールをクリックし、[Español]を選択して、検索ボタンをクリックします。
検索用言語の選択

検索用言語の選択

  1. ヘッダーテキストが "Buscar" に等しいことをアサートします。
ヘッダーのテキストのアサーション

ヘッダーのテキストのアサーション

  1. 上部の検索バーのプレースホルダーテキストが "Buscar en Wikipedia"に等しいことをアサートします。
プレースホルダーテキストのアサーション

プレースホルダーテキストのアサーション

データ駆動型変数の作成

先ほど記録したステップでは、スペイン語でのWikipediaの検索の属性を検証しています。他の言語で検索機能を検証するには、データ駆動型変数を作成する必要があります。

Trainerウィンドウの下部にある [{x}]変数ボタンをクリックし、[Manage variables] を選択します。

[Variables] モーダルを開く

[Variables] モーダルを開く

[Variables] モーダルで、[Data driven variables]ボタンをクリックします。

データ駆動型変数の追加

データ駆動型変数の追加

データ駆動型変数モーダルで、[+ New variable]ボタンをクリックし、スペイン語のデフォルト値を使用して、次の3つのデータ駆動型変数を作成します。

  • "language_code" - "es"

  • "search" - "Buscar"

  • "placeholder" - "Buscar en Wikipedia"

データ駆動型変数の作成

データ駆動型変数の作成

[Apply] ボタンをクリックして変数を作成します。

テストステップの更新

次に、静的な値ではなく、データ駆動型変数を使用するように、テストステップを更新します。

言語選択ツールで "es" を選択する代わりに、データ駆動型変数"language_code" の値を選択するようにステップを編集します。

言語選択ツールの編集

言語選択ツールの編集

ヘッダーが "Buscar"であることをアサートする代わりに、ヘッダーのテキストがデータ駆動型変数"search" の値に等しいことをアサートするようにステップを編集します。

ヘッダーのアサーションの編集

ヘッダーのアサーションの編集

検索バーのプレースホルダーテキストが "Buscar en Wikipedia"に等しいことをアサートする代わりに、プレースホルダーテキストがデータ駆動型変数"placeholder"の値に等しいことをアサートするようにステップを編集します。

プレースホルダーテキストのアサーションの編集

プレースホルダーテキストのアサーションの編集

ステップを最初から再生して、テストが期待どおりに機能することを確認します。その後、テストを保存して、Trainerを閉じます。

DataTableの作成

テストの詳細ページで、[Data-driven variables]パネルを開き、先ほど作成したデータ駆動型変数を表示します。[Generate DataTable] ボタンをクリックして、DataTableを作成します。

新しいDataTableの生成

新しいDataTableの生成

📘

DataTableの作成

既存のデータ駆動型変数からDataTableを生成するだけでなく、[Configuration] > [DataTable]に移動し、[+ New table] ボタンをクリックしてDataTableを作成することもできます。

[Add new DataTable] ページで、[Add scenario]ボタンをクリックして、他の言語を追加します。DataTableでは最大500のシナリオを扱うことができますが、このチュートリアルでは、3つのシナリオを作成すれば十分です。

たとえば、英語と日本語のシナリオを追加するには、次の表の値を追加します。

シナリオlanguage_codeplaceholdersearch
EnglishenSearch WikipediaSearch
JapanesejaWikipedia内を検索検索

DataTableを保存し、このチュートリアルで作成したテストに戻ります。

新しいDataTableへのシナリオの追加

新しいDataTableへのシナリオの追加

DataTableのシナリオの実行

テストのトレーニングとDataTableへの関連付けが完了し、シナリオを実行する準備ができました。

右上の [Run test] ボタンをクリックします。[Cloud run]タブで、[Run DataTable scenarios] と [Run all scenarios]
をオンにします。

DataTableでのすべてのシナリオの実行

DataTableでのすべてのシナリオの実行

[Start runs]ボタンをクリックし、テストが異なるデータで並列実行されることを確認します。

次のステップ

これで、mablでの初めてのデータ駆動型テストの作成は完了です。続いて、次のようなことができるか確認してください。

この例を拡張する

Wikipedia検索のDataTableに他の言語を追加することができますか?

お使いのアプリケーションでデータ駆動型テストの利用を検討する

DataTableの仕組みについて学習した内容を踏まえて、お使いのアプリケーションでDataTableを利用するのに適したテストシナリオにはどのようなものがありますか?

詳細はこちら

データ駆動型テストのドキュメントについては、こちらをご覧ください。