ベース選出カバレッジ(Base Choice Coverage:BCC)とは

 ベース選出カバレッジ(ベースチョイスカバレッジ、Base Choice Coverage、BCC)は、組み合わせテストのカバレッジの一種です。有用なカバレッジ基準ですが、執筆時点で日本語情報が少なかったため、情報をまとめます。

ベース選出カバレッジとは

 ベース選出カバレッジは、組み合わせテストにおいて、パラメータにベースとなる重要な値がある場合に適用します。このベースとなる値は、最も重要な値、ハッピーパスの値、デフォルトとして選ぶべき値が該当します。

 ベース選出カバレッジ100%の組み合わせは、このベースの値を基準に、次のように作成します。

  • 各パラメータからベースを選出した組み合わせを作る。この組み合わせをベースカバレッジアイテムと呼ぶ
  • ベースカバレッジアイテムのうち、一つのパラメータについて、値を非ベース値に置き換えて組み合わせを作る。この作業をすべてのパラメータの値を網羅するまで繰り返して、組み合わせを作る

 ベース選出カバレッジは、上記で作成したすべての組み合わせのうち、テストで網羅できた組み合わせの割合を示します。

ベース選出カバレッジの具体例

 原則論ですとわかりにくいため、具体例で解説します。次のパラメータと値を持つ仕様があるとします。

  • 題材:写真加工アプリの加工選択機能
  • テスト対象が持つパラメータと値は次の通り:
    • フィルタ:標準、モノクロ、ドラマチック
    • 彩度:標準、強調
    • 明るさ:標準、-10%、+10%

 この仕様でのベース値は、パラメータごとに「フィルタ:標準」「彩度:標準」「明るさ:標準」とします。

 この場合、ベースカバレッジアイテムとする組み合わせは以下になります。

  • フィルタ:標準、彩度:標準、明るさ:標準

 
 そして、このベースカバレッジアイテムを基本に、その他の組み合わせを作ります。具体的に、ベースカバレッジアイテムの値の一つをベース以外の値に置き換えて組み合わせを作ります。これを全値を網羅するまで繰り返します。今回の題材の場合、作られる組み合わせは以下になります。

  • フィルタ:モノクロ、彩度:標準、明るさ:標準
  • フィルタ:ドラマティック、彩度:標準、明るさ:標準
  • フィルタ:標準、彩度:強調、明るさ:標準
  • フィルタ:標準、彩度:標準、明るさ:-10%
  • フィルタ:標準、彩度:標準、明るさ:+10%

 これら、ベースカバレッジアイテムと、その他の組み合わせを合わせた6つの組み合わせが、ベース選出カバレッジ100%の組み合わせです。
 仮にテスト設計で6つの組み合わせのうち2つの組み合わせを網羅できたら、ベース選出カバレッジは33.3%になります。

複数ベース選出カバレッジ(Multiple Base Choice Coverage:MBCC)

 ベース選出カバレッジの拡張に、複数ベース選出カバレッジがあります。
 複数ベース選出カバレッジは、一つのパラメータが複数のベース値を取る場合に適用するカバレッジです。この場合、ベース値の全組み合わせをベースカバレッジアイテムとし、そのベースカバレッジアイテムの値を非ベース値に一つ一つ変えて、100%組み合わせを作ります。

他の組み合わせテスト技法との比較

 全組み合わせカバレッジ(All Combinations Coverage:ACoC)と比べると、複数ベース選出カバレッジ、ベース選出カバレッジ100%網羅は、非ベース値についての組み合わせカバレッジが少なくなります。
 1ワイズカバレッジ、各値選択カバレッジ(Each Choice Coverage:ECC)と比べると、ベース値に関わる組み合わせが厚くなります。
 ペアワイズカバレッジ(Pair-Wise Coverage:PWC)と比べると、ベース値に関わるペアは網羅されるものの、それ以外の2値網羅はカバレッジが低くなります。

 上記の特徴から、全網羅は困難であるものの、ベース値がありそれを中心に網羅したい場合に、ベース選出カバレッジは有力な選択になります。