
【ソフトウェアテスト】直交表/ペアワイズ法 ②
直交表そのものについては直交表/ペアワイズ法 ①で記載しています。
この記事では主にペアワイズ法についてまとめます。
ペアワイズ法は組み合わせテスト技法の一つであり、直交表で考慮した各因子に想定されている水準が均等に分布するという条件を緩和し、各水準の組み合わせが少なくとも1回以上出現するようなペアを選択することで、直交法そのものよりもテストの粒度を粗くしてテストケース数を抑える手法です。
1. システム要件の一例
せっかくなので直交表/ペアワイズ法 ①とは別のテストケースを作成します。
あるWebサービスのユーザー問い合わせで、PC・スマートフォン端末のWebブラウザから特定ページを利用しようとしたときに、表示崩れが発生して一部機能の操作ができないという問い合わせがあったが、特定の組み合わせ条件下のみでしか再現しないらしく、かつ問い合わせ数も少なく再現条件が不明だったとします。
少ない問い合わせ件数ながらも、障害発生状況の法則としては、PC・スマートフォン端末ともに市場リリース最新バージョンOSでの報告のみだったので、いったんは各OSの最新バージョンをターゲットにして、PC・スマートフォン端末のWebブラウザを対象に、Webページの表示崩れが発生していないかのテストを実施すると想定して、テストスコープを以下の条件に絞ってテストします。
■端末・ブラウザ・ページの組み合わせでの表示確認テストスコープ
・テスト対象の端末は以下のパターンとする
・Windows 11 OS PC
・Android 13 OS SP
・iOS 17.4 OS SP
・テスト対象ブラウザは以下のパターンとする
・Google Chrome
・Safari
・Microsoft Edge
・テスト対象のページは以下のパターンとする
・ユーザー設定ページ
・FAQ検索ページ
・テスト対象のブラウザ表示サイズは以下のパターンとする
・PCサイズ(SPの場合は横画面)
・SPサイズ(PCの場合はウィンドウサイズをSPサイズ適用と同様の縦長に設定)
2. 因子と水準
直交表のときと同様に、上記の各要件から因子と水準を洗い出します。
上記仕様から想定される因子は4点です。
・因子
・端末
・ブラウザ
・ページ
・表示サイズ
そして、上記因子から想定される水準は、以下のパターンです。
・水準
・端末[Windows 11 OS PC,Android 13 OS SP,iOS 17.4 OS SP]
・ブラウザ[Google Chrome,Safari,Microsoft Edge]
・ページ[ユーザー設定ページ,FAQ検索ページ]
・表示サイズ[PCサイズ,SPサイズ]
因子と水準を表の形式で整理します。
・因子水準表
3. 組み合わせ作成
因子と水準が整理できたので、組み合わせの作成を進めますが、比較対象とするため、まずは直交表を作成します。
・因子と水準から作成した直交表
因子と水準を全網羅しようとした場合のケース数は、各因子の数である3*3*2*2=36パターンになるところ、直交表では12パターンになりました。
3水準を持つ要素2つについては、1~12項目内に各水準が4つずつ出現しています。
2水準を持つ要素2つは、1~12項目内に各水準が6つずつ出現しています。
これをさらに、ペアワイズ法を適用したパターンでケース数を絞ります。
・ペアワイズ法を適用したケース
1因子内の各水準が、2因子間でペアになる組み合わせとして必ず1回は出現する形式で、項目数を絞り込むことができました。
2水準を持つ因子同士の組み合わせとして、ページの水準は[ユーザー設定ページ,FAQ検索ページ]で2水準です。
表示サイズの水準は[PCサイズ,SPサイズ]で2水準ですが、、想定される組み合わせは2*2=4パターンで、下記組み合わせはいずれかの項目で必ず網羅しています。
・[ユーザー設定ページ]+[PCサイズ][ユーザー設定ページ]+[SPサイズ]
・[FAQ検索ページ]+[PCサイズ][FAQ検索ページ]+[SPサイズ]
3水準を持つ因子同士の組み合わせとして、端末の水準は[Windows 11 OS PC,Android 13 OS SP,iOS 17.4 OS SP]で3水準、ブラウザの水準は[Google Chrome,Safari,Microsoft Edge]で3水準です。
想定されるパターンは3*3=9パターンで、下記組み合わせはいずれかの項目で必ず網羅しています。
・[Windows 11 OS PC]+[Google Chrome]
・[Windows 11 OS PC]+[Safari]
・[Windows 11 OS PC]+[Microsoft Edge]
・[Android 13 OS SP]+[Google Chrome]
・[Android 13 OS SP]+[Safari]
・[Android 13 OS SP]+[Microsoft Edge]
・[iOS 17.4 OS SP]+[Google Chrome]
・[iOS 17.4 OS SP]+[Safari]
・[iOS 17.4 OS SP]+[Microsoft Edge]
また、2水準を持つ因子と3水準を持つ因子同士の組み合わせでは、端末の水準は[Windows 11 OS PC,Android 13 OS SP,iOS 17.4 OS SP]で3水準、ページの水準は[ユーザー設定ページ,FAQ検索ページ]で2水準です。
想定されるパターンは2*3=6パターンで、下記組み合わせはいずれかの項目で必ず網羅しています。
・[Windows 11 OS PC]+[ユーザー設定ページ]
・[Windows 11 OS PC]+[FAQ検索ページ]
・[Android 13 OS SP]+[ユーザー設定ページ]
・[Android 13 OS SP]+[FAQ検索ページ]
・[iOS 17.4 OS SP]+[ユーザー設定ページ]
・[iOS 17.4 OS SP]+[FAQ検索ページ]
以上で、直交表の場合は12項目だったものが、ペアワイズ法では9項目まで簡略化することができました。