DataTable

DataTableの概要

ユーザーシナリオを自動化する場合、異なるデータセットを用いて1つのテストを複数回実行するのが一般的です。

例として、Eコマースアプリケーションで、異なる複数の地域の出荷合計が正しく計算されるかどうかを検証する場合を考えます。地域ごとに料金と税を検証するテストを別々に作成することもできますが、各テストで同じステップを使用することになります。

このプロセスを簡素化し、取引形態ごとにテストを作成して維持する必要を減らすために、mablでは、DataTableに基づいて、各地域に同じステップを実行するテストを1つ作成します。

DataTableは、テストで使用する変数と各シナリオでの変数の値を定義したデータテーブルです。

ユースケース

上記の出荷シナリオ以外に、DataTableのユースケースには、次のようなものがあります。

  • ローカリゼーション: 異なる複数の言語のコンテンツで同じページをテストする
  • 検索の検証: さまざまな検索クエリで期待どおりの結果が得られることを確認する

一般に、DataTableはテストロジックが不変で、入力やデータが頻繁に変わる場合に便利です。このような場合は、mabl TrainerやAPIテストエディターで入力データを管理するよりも、DataTableでデータを管理する方が簡単です。

DataTableの構成

DataTableは変数とシナリオで構成されています。これらの構成要素について説明するために、以下の "localization" DataTableのスクリーンショットを見ていきます。

1125

異なる複数の言語のDataTableテスト用コンテンツの例

変数

DataTableの各列ヘッダーは、テストで使用できるデータ駆動型変数を表しています。

上記の "localization" DataTableには、logingreetinglogout の3つの変数が含まれています。

シナリオ

DataTableの各行は、1つのシナリオを表しています。最初の列にはシナリオ名 ("Scenario Name") が表示されており、後続の列には、このシナリオの変数値が示されています。

上記の "localization" DataTableには、"English"、"Spanish"、"Japanese" という3つのシナリオが示されています。たとえば、"Spanish" シナリオの場合、変数 login の値は "Iniciar sesión" です。

ワークフロー

DataTableを使用してアプリケーションのテストを行う一般的なワークフローは、次のとおりです。

  1. テストを行うシナリオを使ってDataTableを作成します。
  2. 新しいブラウザーテストを作成し、DataTableにこのテストを関連付けます。
  3. テストで変数を使用して、DataTableでテストをトレーニングします (該当する場合)。mabl Trainerでテストを実行して、期待どおりの結果が得られることを確認します。
  4. DataTableのシナリオを有効にしてテストをアドホック実行し、すべてのシナリオをテストします。

📘

DataTableのシナリオの実行

テスト実行でDataTableのシナリオが有効になっている場合、DataTableのシナリオごとに並行して実行がトリガーされます。

たとえば、5つのシナリオを含むDataTableを使ってテストが実行された場合、5つのテスト実行 (シナリオごとに1つ) がトリガーされます。