境界値(Boundary Value Analysis, BVA)と同等分割(Equivalence Partitioning, EP)は、手動テストにおけるベーシックなテストデザイン手法です。
背景:
これらの技術は、テストシナリオの冗長性を減らし、少ない労力で欠陥を見つける確率を高めるために登場しました。同等分割は、すべての可能な入力データを同様に処理されるべきグループに分割することを可能にし、境界値は範囲の端において頻繁に発生するバグを特定します。
問題:
これらの技術を適用する際の主な困難は、境界や分割を正しく特定できないことです。たとえば、テスターは範囲を誤って(たとえば、1の単位で)特定したり、暗黙の境界(たとえば、範囲が1から始まる場合に0が機能するかどうか)を考慮しなかったりする可能性があります。
解決策:
効果的に適用するためには、仕様書を注意深く読み、期待される入力データを明確に定義し、閉じた境界と開いた境界を丁寧に示す必要があります。常にアナリストや開発者と論争のあるケースを議論することが重要です。
主な特徴:
同等クラスが多数ある場合、それらの境界をすべてテストする必要がありますか?
いいえ、最もビジネスにとって重要な(有効と無効の)クラスを特定し、テストマトリックスを過負荷にしないようにすべきです。
境界値自体は範囲に含まれますか?
問題の条件によります。範囲が[1, 10]の場合、1と10は含まれますが、(1, 10)の場合は含まれません。
これらの技術はテキストデータや文字列データに適用できますか?
はい、例えば文字列の長さ、有効な文字、空の値の検証のために使用できます。
テスターは「年齢」フィールド(1-120)をチェックする際、20、50、100の値でのみテストケースを作成しました。
メリット:
デメリット:
テスターはすべての境界をチェックしました:0、1、2、119、120、121、および範囲内のランダムな値。
メリット:
デメリット: