0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ペアワイズ法とPICTの基本的な使い方

Last updated at Posted at 2025-12-07

この記事は何か?

本記事では、ブラックボックステストのテスト技法の1つであるペアワイズ法の基本と、テスト生成ツール「PICT」の基本的な使い方を解説します。

目次

1. ペアワイズ法の概要

1.1. 特徴

ソフトウェアテストですべての組み合わせをテストすると、テストケース数が膨大になり現実的ではありません。
例えば、3つのブラウザ、3つのOS、2つの言語設定をテストする場合、すべての組み合わせでは18ケースが必要です。パラメータが増えれば、テストケース数はさらに増加します。

ペアワイズ法は「多くの不具合は2つのパラメータの相互作用で発生する」という経験則に基づき、テストケース数を削減する設計技法です。

実務では、PICTやPictMasterなどの専用ツールでテストケースを生成します。

1.2. 適用例

Webアプリケーションで以下の3つのパラメータをテストする場合を考えます。

  • ブラウザ: Chrome / Firefox / Safari
  • OS: Windows / macOS / Linux
  • 言語設定: 日本語 / 英語

すべての組み合わせでは 3 × 3 × 2 = 18ケースが必要です。

ペアワイズ法では、すべての2パラメータの組み合わせを網羅しつつ、以下の9ケースに削減できます。

No. ブラウザ OS 言語
1 Chrome Windows 日本語
2 Chrome macOS 英語
3 Chrome Linux 日本語
4 Firefox Windows 英語
5 Firefox macOS 日本語
6 Firefox Linux 英語
7 Safari Windows 日本語
8 Safari macOS 英語
9 Safari Linux 日本語

すべての組み合わせの半分のケース数で全ペアをカバーできます。

2. PICTによるテストケース生成

2.1. PICTの導入

PICTは、Microsoftが開発したオープンソースのテストケース生成ツールです。

GitHubの公式リポジトリから、pict.exeをダウンロードできます。

2.2. 基本的な使い方

PICTでは、パラメータと値をテキストファイルに記述します。
1.2.の例を入力ファイル(test.txt)として作成します。

Browser: Chrome, Firefox, Safari
OS: Windows, macOS, Linux
Language: Japanese, English

このファイルを以下のコマンドで実行します。

pict test.txt

標準出力にテストケースがタブ区切りで出力されます。
この出力をそのままテストケースとして使用できます。

Browser OS      Language
Chrome  Linux   English
Safari  Linux   Japanese
Chrome  Windows Japanese
Safari  macOS   English
Firefox macOS   Japanese
Chrome  macOS   Japanese
Firefox Linux   English
Safari  Windows English
Firefox Windows English

2.3. 制約条件の指定

実際はすべての組み合わせが有効とは限りません。例えば、SafariはWindows上で動作しないため、この組み合わせを除外する必要があります。

PICTでは制約条件を入力ファイルに記述することで、無効な組み合わせを除外します。

Browser: Chrome, Firefox, Safari
OS: Windows, macOS, Linux
Language: Japanese, English

IF [Browser] = "Safari" THEN [OS] <> "Windows";

このファイルを実行すると、Safari + Windowsの組み合わせは出力されません。

制約条件は複数指定でき、AND/OR/NOTなどの論理演算子も使用できます。

3. まとめ

ペアワイズ法を使うことで、テストケース数を削減しながら効果的なテストを実行できます。

参考資料

https://github.com/Microsoft/pict/blob/main/doc/pict.md

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?