pairwise testing all pairs testing tutorial with tools
ペアワイズテストとは何ですか、そしてそれが欠陥を見つけるための効果的なテストデザインテクニックである方法:
この記事では、「 組み合わせテスト ’と呼ばれるテクニック ペアワイズテスト」 としても知られている ' 全ペアテスト '。
スマートテストは時間の必要性です。時間の90%のシステムテストチームは、厳しいスケジュールで作業する必要があります。したがって、テスト設計手法は、最大のテストカバレッジと高い欠陥歩留まり率のために非常に効果的であるはずです。
学習内容:
定義:ペアワイズテストとは何ですか?
ペアワイズテスト は テスト設計 100パーセントのテストカバレッジを提供する手法。
ISTQBは、オールペアテスト(またはペアワイズテスト)を次のように定義しています。 ブラックボックステストの設計手法 テストケースは、入力パラメーターの各ペアのすべての可能な離散的な組み合わせを実行するように設計されています。
ソフトウェアアプリケーションの出力は、多くの要因に依存します。入力パラメーター、状態変数、および環境構成。のようなテクニック 境界値分析と等価分割 個々の要因の可能な値を特定するのに役立ちます。しかし、これらすべての要因について、考えられるすべての値の組み合わせをテストすることは現実的ではありません。代わりに 組み合わせのサブセットが生成されます すべての要素を満たすために。
オールペア手法は、複数のパラメーターを含むアプリケーションのテストを設計するのに非常に役立ちます。テストは、システムへの入力パラメーターの各ペアについて、それらのパラメーターのすべての可能な離散的な組み合わせが存在するように設計されています。テストスイートはすべての組み合わせをカバーします。したがって、それは網羅的ではありませんが、 バグを見つける 。
応募方法を学びましょう 全ペアテスト この例で。
ペアワイズテストの例
車の注文アプリケーション:
- 車の注文アプリケーションでは、車の売買が可能です。デリーとムンバイでの取引をサポートする必要があります。
- アプリケーションには登録番号が必要です。有効または無効の場合があります。 BMW、アウディ、メルセデスの車の取引が可能になるはずです。
- E-bookingとInStoreの2種類の予約が可能です。
- 注文は取引時間中にのみ行うことができます。
ステップ1:関係する変数をリストアップしましょう。
1) 注文カテゴリ
a。購入
b。売る
二) ロケーション
a。デリー
b。ムンバイ
3) 車のブランド
a。 BMW
b。アウディ
c。メルセデス
4) 登録番号
a。有効(5000)
b。無効
5) 注文タイプ
a。電子予約
b。ストア内
6) 注文時間
a。労働時間
b。非稼働時間
考えられるすべての有効な組み合わせをテストする場合:
= 2 X 2 X 3 X 5000 X 2 X 2
= 240000有効なテストケースの組み合わせ:(
無効な組み合わせも無数にあります。
ステップ2:簡単にしましょう
–スマートな代表的なサンプルを使用します。
–データが非離散的である場合でも、グループと境界を使用します。
–登録番号を2つに減らします
- 有効な登録番号
- 登録番号が無効です
それでは、可能な組み合わせの数を計算しましょう
= 2 X 2 X 3 X 2 X 2 X 2
= 96
ステップ3:関連する変数と値の配置。
関連する変数と値を配置すると、次のようになります。
次に、値の数が最も多いものが最初で、最も少ないものが最後になるように変数を並べ替えます。
ステップ4:変数を配置してテストスイートを作成します
表を列ごとに入力していきましょう。最初は、テーブルは次のようになります。の3つの値 製品 (値の数が最も多い変数)は、それぞれ2回書き込む必要があります(2は、次に大きい変数の値の数です。 注文カテゴリ )。
OrderCategory列には2つの値があります。これが、最初の列であるProductの値を挿入する必要がある回数です。
列1の値のセットごとに、列2の両方の値を入力します。列3についても同じことを繰り返します。
バイとデリーがありますが、待ってください。バイとムンバイはありません。セルとムンバイはありますが、セルとデリーはありません。 3番目の列の2番目のセットの値を入れ替えてみましょう。
これははるかに良く見えます!
Javaでキューを作成する方法
3列目と4列目についても同じ手順を繰り返します。
列3と列4を比較すると、列3の各値には列4の両方の値があります。ただし、2を比較するとndおよび4th列には、購入と有効と販売と無効があります。購入には「無効」がなく、販売には「有効」がありません。したがって、4の最後の値のセットを交換する必要がありますthカラム。
列6(注文時間)には問題があります。購入/非稼働時間と販売/稼働時間が欠落しています。すでにすべての行をスワップしているため、値をスワップして欠落しているペアを適合させることはできません。ここでスワップすると、すでにソートされている他の可能なペアが欠落する可能性があります。したがって、これらのペアを含む2つのテストケースを追加します。したがって、空白行!
他の変数値は純粋に任意であるため(またはDo n’t Cares〜)、必要に応じて空のセルに入力します。
やあ! 96のすべての組み合わせではなく、8つのケースのすべてのペア!
したがって、テスト設計のオールペア手法がいかに効率的であるかがわかりました。バグを見つける可能性は高く、楽しく強力です。
ペアワイズテスト手法にもいくつかの制限があります。
- テスト用に選択した値が正しくない場合は失敗します。
- 可能性の高い組み合わせがあまり注目されない場合は失敗します。
- 変数間の相互作用が十分に理解されていない場合は失敗します。
ペアワイズテストツール:
必要なテストケースとしてパラメーター値の選択肢のコンパクトなセットを生成することにより、テストケースの設計プロセスを効果的に自動化するのを容易にするすべてのペアのテスト手法を適用するツールが利用可能です。業界でよく知られているツールは次のとおりです。
- PICT - MicrosoftCorpが提供する「PairwiseIndependentCombinatorialTesting」。
- IBM FoCuS - IBMが提供する「FunctionalCoverageUnifiedSolution」。
- 使徒言行録 - 米国政府機関であるNISTが提供する「AdvancedCombinatorialTestingSystem」。
- ヘキサワイズ
- ジェニー
- ペアワイズ 帰納的ASによる
- 終戦記念日 無料のオールペアテストツール
結論:
ペアワイズテスト手法は、カバーする組み合わせの数を劇的に減らすことができますが、障害検出の観点からは非常に効果的です。これは確かに、テストの労力とテストの有効性の両方で双方にメリットのある状況を保証するスマートなテスト設計手法です。
ソフトウェアテストのテスト計画段階では、ペアワイズテスト手法を常に考慮に入れる必要があります。手動で行う場合でも、任意のツールを使用してテストケースを生成する場合でも、テストの見積もりに影響を与えるため、テスト計画の必要なコンポーネントになります。