はじめに
こんにちは。アメリカ在住で独学エンジニアを目指している Taira です。
本日はテスト技法のひとつであるペアワイズ法について解説していきたいと思います
ペアワイズ法とは
ペアワイズ法(Pairwise Testing)は、ソフトウェアテストにおけるテストケース設計技法の一つです。すべての入力項目の「任意の 2 つの組み合わせ(ペア)」が一度は登場するようにテストケースを設計する方法を指します。
この手法は、「発見されるバグの約 80%は 2 つの入力要素の組み合わせに起因する」という経験的な前提に基づいています。そのため、すべての 2 項目の組み合わせを網羅することで、効率よくバグを検出することができると考えられています。
全ての組み合わせを網羅する全数テストよりも、テストケース数を大幅に減らしながら、バグの発見率を高く保てるのが特徴です。
具体例
あるソフトウェアに以下の 3 つの入力項目があるとします:
パラメータ | 値の種類 |
---|---|
OS | Windows, Mac |
ブラウザ | Chrome, Safari |
言語 | 日本語, 英語 |
この場合、全組み合わせでは 2 × 2 × 2 = 8 通りのテストが必要です。
しかしペアワイズ法では、任意の 2 つの項目の全ての組み合わせが 1 回以上出現していればよいため、例えば次のような 4 つのテストケースで済む可能性があります:
ケース | OS | ブラウザ | 言語 |
---|---|---|---|
1 | Windows | Chrome | 日本語 |
2 | Mac | Safari | 英語 |
3 | Windows | Safari | 日本語 |
4 | Mac | Chrome | 英語 |
この例では、すべての 2 項目の組み合わせが 1 回以上含まれています。
利点
- 組み合わせが多い状況でも、現実的な数のテストケースに絞れる
- 多くのバグは 2 つの要因の組み合わせで発生するという経験則に基づいている
- テスト工数を削減しつつ、網羅性を確保できる
使用される場面
- 入力項目が多いフォームのテスト
- OS × ブラウザ × バージョン のような組み合わせテスト
- IoT 製品や組み込み機器の設定テスト