【ISTQB /JSTQB AutomotiveTester 解説】4.2.4 要件ベースドテストとは?|動的テスト技法をわかりやすく解説

JSTQB Automotive Tester

要件ベースドテスト(Requirement Based Testing)は、ISTQB Foundation Level(CTFL)でも登場する基本的なテストアプローチであり、Automotive Testerシラバスでも K1(用語レベル) として扱われます。

この記事では、自動車領域のテストで重要となる「要件ベースドテスト」の考え方を、具体例を交えながらわかりやすく紹介します。


■ 要件ベースドテストとは?

要件ベースドテストとは、仕様書(要求仕様)からテスト条件を抽出し、それに基づいてテストケースを作成・実行するアプローチ です。

テスト設計技法(同値分割・境界値分析など)とは異なり、

これは 「テストの進め方(アプローチ)」 に分類されます。


■ 要件ベースドテストの基本ステップ

Foundationレベルで学んだ「テストプロセス」と同じ流れで進んでいきます。

  1. 要件を分析する

  2. テスト条件を特定する

  3. テストケースを設計する

  4. テストケースを実行する

  5. 結果を分析し、必要なら追加テストを作る

このように、要件に基づいてテスト設計 → 実行 → 改善 を繰り返し、要件を十分にカバーすることが目的です。


■ 自動車開発での具体例:要件ベースドテスト

● 要件例

要件R1:車速が20km/h以下のとき、後方カメラが自動で起動すること。

要件R2:車速が20km/hを超えた場合、後方カメラは自動的にオフになること。

● テスト条件の抽出

  • 車速 ≤ 20km/h のときカメラON

  • 車速 > 20km/h のときカメラOFF

● テストケース例

TC No

車速

期待結果

TC1

0 km/h

カメラON

TC2

10 km/h

カメラON

TC3

20 km/h

カメラON

TC4

21 km/h

カメラOFF

TC5

30 km/h

カメラOFF

このように、要件の内容をそのまま反映したテストケースが作られます。


■ 要件が不十分な場合のリスク

要件が曖昧・不完全な場合、

その要件に基づくテストケースも不完全になる

という点が最大のデメリットです。

例:

要件に「20km/h以下」とあっても、

  • “20km/hちょうど” の扱いが明確でない

  • 小数点はどう扱うのか?

  • 停止中(0km/h)をどう扱うのか?

などが曖昧な場合、テスト時にも混乱が生じます。


■ すべての要件を100%網羅できない問題

要件が膨大だったり、非常に詳細だったりすると、

すべての要件をテストするのは不可能 です。

これはテスト原則の1つ、

「原則②:完全(網羅的)テストは不可能」

に対応する内容です。

そのため現実的には、

  • 重要度

  • リスク

  • 優先度

    に基づいてテストケースを優先付けします。

特に自動車領域では、安全に直結する要件(ASILが高いもの)を優先してテストを行います。


■ 要件ベースドテスト+探索的テストの組み合わせ

動画でも解説されているように、要件ベースドテストだけでは

「要件に記述されていない欠陥」に気づけないことがあります。

そこで、自動車開発では次のような組み合わせが一般的です。

  • 要件ベースドテスト(形式的)

  • 経験ベーステスト(探索的テスト、エラーベース)

  • 回帰テスト

特に探索的テストでは、実車特有の動き、環境条件、ドライバー操作などから新しい不具合を見つけることがよくあります。


■ まとめ

要件ベースドテストは最も基本的なアプローチですが、

自動車開発では非常に重要な役割を果たします。

  • 要件からテストを作ることで、仕様を漏れなく確認できる

  • ただし要件が不完全だとテストも不完全になる

  • 全部の要件はテストできないので優先度付けが必要

  • 経験ベースや回帰テストと組み合わせると効果が高い

K1レベルの範囲ですが、実務でも頻繁に登場する重要な考え方です。

コメント

タイトルとURLをコピーしました