【どうちぶんかつ】

同値分割 とは?

最終更新:
💡 「同じ仲間」をまとめて代表1人だけテストする効率化術

データを「同じように処理されると期待するグループ」に分け、各グループから代表値を選んでテストする技法。効率的にテストを設計できるが、すべての不具合を見つける保証ではない。

📌 このページのポイント
同値分割:グループの代表を選ぶ 例:整数の年齢を1〜120歳で受け付ける 0以下 無効 −5 代表値 1〜120 有効 50 代表値 121以上 無効 200 代表値 同じ扱いを期待するグループから選ぶ 全ての値に不具合がない保証ではない
整数の年齢入力の例。数字ではない入力なども別のグループとして検討し、境界値分析などを組み合わせます。
ひよこ ひよこ
同値分割って、どういう考え方なの?
ペンギン先生 ペンギン先生
例えば整数の年齢入力で「1〜120歳が有効」という仕様なら、その範囲を同じように受け付けるグループと考え、代表の50を選ぶんだ。同じ扱いになるという前提でテストを絞る方法で、全部の値にバグがない保証ではないよ。
ひよこ ひよこ
無効なデータもグループ分けするの?
ペンギン先生 ペンギン先生
もちろん!整数なら「0以下」「121以上」、さらに「数字ではない入力」なども仕様に合わせて分けるよ。各グループが重ならず、値のあるグループになるように整理するんだ。
ひよこ ひよこ
境界値分析とはどう違うの?
ペンギン先生 ペンギン先生
同値分割はグループの代表を選び、境界値分析は順序のあるグループの境目を重点的に調べるよ。整数の年齢の例なら0、1、120、121を調べる2値境界値分析ができるね。
ひよこ ひよこ
実際のプロジェクトではどう使う?
ペンギン先生 ペンギン先生
入力フォームのバリデーションテストが典型的だけど、APIのパラメータや設定ファイルの値などにも使えるよ。テストケースが爆発的に増えるのを防ぎつつ、効果的なテストを設計するための基本中の基本の技法なんだ
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「同値分割」って出てきたら「同じ扱いを期待するグループから代表値を選ぶテスト技法」と思えばだいたいOK!
📖 おまけ:英語の意味
「Equivalence Partitioning」 = 同値分割
💬 equivalence は「等価」、partitioning は「分割」で、等価なデータを分割するという意味だよ

参考資料

← 用語集にもどる