直交配列テストとは何ですか? (例)

直交配列テスト

直交配列テスト (OAT) 直交配列を使用してテスト ケースを作成するソフトウェア テスト手法です。 これは、テスト対象のシステムに大量のデータ入力がある場合に特に役立つ統計テストのアプローチです。 直交配列テストは、入力をペアにして組み合わせ、比較的少ない数のテスト ケースでシステムをテストすることでテスト カバレッジを最大化し、時間を節約します。

たとえば、列車のチケットを検証する必要がある場合、乗客数、チケット番号、座席番号、列車番号などの要素をテストする必要があります。各要素/入力を 1 つずつテストするのは面倒です。QA エンジニアが複数の入力を組み合わせてテストを行うと、より効率的になります。このような場合、直交表テスト方法を使用できます。

時間を節約するために入力をペアリングまたは組み合わせてシステムをテストするこのタイプのテストは、ペアワイズ テストと呼ばれます。ペアワイズ テストには OATS テクニックが使用されます。

なぜ OAT (直交配列テスト) を使うのか?

現在の状況では、コードの複雑さにより、高品質のソフトウェア製品を顧客に提供することが困難になっています。

従来の手法では、テストスイートには入力値と前提条件のすべての組み合わせから導出されたテストケースが含まれていました。 結果として、n 個のテスト ケースをカバーする必要があります。

しかし、実際のシナリオでは、文書化、提案、顧客からのフィードバックなど、テスト中に考慮する必要がある他のプロセスがあるため、テスターに​​は欠陥を発見するためにすべてのテスト ケースを実行する余裕はありません。テスト段階。

したがって、テスト管理者は、テスト ケースの数と品質を最適化して、最大限のパフォーマンスを確保したいと考えました。 テストカバレッジ 最小限の努力で。 この取り組みはと呼ばれます テストケース 最適化。

  1. ペアワイズ相互作用をテストするための体系的かつ統計的な方法
  2. インタラクションと統合ポイントは欠陥の主な原因です。
  3. ほとんどの (すべてではない) バグを発見できる可能性が高い、明確に定義された簡潔なテスト ケースを実行します。
  4. 直交アプローチは、すべての変数のペアワイズカバレッジを保証します。

OAT の表現方法

OATの計算式

OATを代表

  • 実行数 (N) – 配列内の行数。生成されるテスト ケースの数に変換されます。
  • 因子 (K) – 配列内の列の数。これは、処理できる変数の最大数に変換されます。
  • レベル (V) – 単一の因子で取得できる値の最大数。

2 つの因子にはテスト対象の 3 ~ XNUMX つの入力があります。 入力の最大数によってレベルが決まります。

直交配列テストの実行方法: 例

  1. シナリオの独立変数を特定します。
  2. 実行数の最小の配列を見つけます。
  3. 因子を配列にマッピングします。
  4. 「残り」レベルの値を選択します。
  5. 実行をテスト ケースに転記し、生成されなかった特に疑わしい組み合わせを追加します。

Web ページには XNUMX つの異なるセクション (上、中、下) があり、ユーザーに対して個別に表示または非表示にすることができます。

  • 因子の数 = 3 (上、中、下)
  • レベルの数 (可視性) = 2 (非表示または表示)
  • 配列タイプ = L4(23)

(4 は、OAT アレイの作成後に到着した実行の数です)

従来のテスト手法を使用する場合、2 X 3 = 6 テスト ケースのようなテスト ケースが必要になります。

テストケース シナリオ テストする値
テスト #1 見えないベース トップ
テスト #2 SHOWN トップ
テスト #3 見えないベース ボトム
テスト #4 SHOWN ボトム
テスト #5 見えないベース 真ん中
テスト #6 SHOWN 真ん中

OAT テストを行う場合は、以下に示すように 4 つのテスト ケースが必要です。

テストケース TOP 真ん中 ボトム
テスト #1 隠されました 隠されました 隠されました
テスト #2 隠されました 目に見えます 目に見えます
テスト #3 目に見えます 隠されました 目に見えます
テスト #4 目に見えます 目に見えます 隠されました

マイクロプロセッサの機能をテストする必要があります。

  1. 温度:100℃、150℃、200℃。
  2. 圧力: 2 psi、5 psi、8 psi
  3. ドーピング量:4%、6%、8%
  4. 堆積速度: 0.1mg/s、0.2mg/s、0.3mg/s

従来の方法を使用すると、すべての入力をカバーするには = 81 のテスト ケースが必要になります。 OATS メソッドを使ってみましょう。

因子の数 = 4 (温度、圧力、ドーピング量、成膜速度)

レベル = 要因ごとに 3 つのレベル (温度には 3C、100C、150C の 200 つのレベルがあり、同様に他の要因にもレベルがあります)

以下のように配列を作成します。

1. 因子数の列

テストケース # 温度 圧力 ドーピング量 成膜速度

2. 因子ごとのレベルと等しい行数を入力します。 つまり、温度には 3 つのレベルがあります。 したがって、温度のレベルごとに 3 行を挿入します。

テストケース # 温度 圧力 ドーピング量 成膜速度
1 100C
2 100C
3 100C
4 150C
5 150C
6 150C
7 200C
8 200C
9 200C

3. 次に、カラム内の圧力、ドーピング量、堆積速度を分割します。

たとえば、温度 2C、100C、150C にわたって 200 psi を入力し、同様に 4C、100C、150C に対してドーピング量 200% を入力します。

テストケース # 温度 圧力 ドーピング量 成膜速度
1 100C 2のプサイ 4% 0.1mg/秒
2 100C 5のプサイ 6% 0.2mg/秒
3 100C 8のプサイ 8% 0.3mg/秒
4 150C 2のプサイ 4% 0.1mg/秒
5 150C 5のプサイ 6% 0.2mg/秒
6 150C 8のプサイ 8% 0.3mg/秒
7 200C 2のプサイ 4% 0.1mg/秒
8 200C 5のプサイ 6% 0.2mg/秒
9 200C 8のプサイ 8% 0.3mg/秒

したがって、OA では、カバーする 9 つのテスト ケースが必要です。

OAT の利点

  • 選択されたすべての変数のペアごとの組み合わせのテストを保証します。
  • テストケースの数を減らす
  • すべての変数のすべての組み合わせのテストをカバーする、より少ないテスト ケースを作成します。
  • 変数の複雑な組み合わせが可能です。
  • 手動で作成したテスト セットよりも生成が簡単で、エラーが発生しにくくなります。
  • 役に立つ 統合テスト.
  • テストサイクルとテスト時間が短縮されるため、生産性が向上します。

OATの欠点

  • データ入力が増えると、テストケースの複雑さが増します。その結果、手作業の労力と時間が増加します。そのため、テスターは 自動化テスト.
  • ソフトウェアコンポーネントの統合テストに役立ちます。

OAT 実行中の間違いまたはエラー

  1. テスト作業は、アプリケーションの間違った領域に集中すべきではありません。
  2. 組み合わせるパラメータを間違って選択しないようにします
  3. テスト作業を最小限に抑えるために、直交配列テストの使用は避けてください。
  4. 直交配列テストを手動で適用する
  5. 高リスクのアプリケーションへの直交配列テストの適用

まとめ:

ここでは、OAT (直交配列テスト) を使用してテストの労力を軽減し、テスト ケースの最適化をどのように達成できるかを見てきました。