[QA]境界値分析


これはなに?

境界値分析というテスト技法がどういうものなのか
また、どういう場面で使うべきものなのかを例を混ぜながら説明した記事になります

前回の同値分割についての記事はこちら

この記事に書かれていること

  • 境界値分析とは?
  • 境界値分析の使用場面と使用例

境界値分析とは?

同値分割で得られた同値クラスの端となる値(およびその前後の値)を明らかにして、それをテストデータとするテスト技法のこと。
IT Media エンタープライズより引用

出力結果が変わる境界値付近はコード上不具合が発生しやすく、それを防ぐという目的でこの技法は広く使われています。

使用場面と使用例

使用場面

前回の記事で書いた同値分割と同様に、同値クラスだった場合の処理が同じであり、どの値を入力しても共通の出力をする時に使用します。

具体的な使用例を以下に書いていきます

使用例

前回と同様、以下のような項目で割引額が正しく機能しているかを確認したいと仮定します。

  • 5,000円以上の購入で5%OFF
  • 10,000円以上の購入で10%OFF
購入金額 割引率
0~4,999円 割引なし
5,000~9,999円 5%OFF
10,000円~ 10%OFF

同値分割の時は同値クラスの代表値を入力して期待通りの割引率になるかを確認していましたが、境界値分析はその名の通り出力の結果が変わる境目付近を確認します。

それを踏まえて今回のパターンだとグループごとの境目は0, 5000, 10000になります
さらに確認するパターンを洗い出すと、0, 1, 4999, 5000, 5001, 9999, 10000, 10001の8パターンになります。
※マイナスはユーザの操作上あり得ないのでテストケースから外しています

これが今回の例において境界値分析でテストするケースになります。

まとめ

今回は境界値分析について書きました。
いろんな記事にも書いてある通り、同値分割と一緒に実施される場合が多いです。
出力が変わる境界値ではバグが発生しやすいということだけ覚えておけばひとまず良いと思います。

次回はディシジョンテーブルと言う、複雑な入力パターンをテストする際に有効なテスト技法について紹介したいと思います。

参考記事

IT Media エンタープライズ