【ISTQB /JSTQB FL 4.0解説】テスト技法の概要をわかりやすく解説|ブラックボックス・ホワイトボックス・経験ベーステストとは?

JSTQB Fundation Level 4.0

ISTQB Foundation 4.0 第4章「テスト分析と設計」では、テスト技法(Test Techniques)について学びます。

この記事では、その最初のトピック「4.1 テスト技法の概要(Test Techniques Overview)」をわかりやすく整理します。


🧩 テスト技法とは?

テスト技法(Test Techniques)とは、「テストケースの数を最適化し、効果的にカバレッジを確保する方法」のことです。

ソフトウェアテストの原則第2条では、「完全なテスト(Exhaustive Testing)は不可能」とされています。

つまり、すべての入力パターンを試すことは現実的ではありません。

ではどうやって限られた時間・リソースの中で高い信頼性を確保するのか?

その答えが「テスト技法」です。

テスト技法を使うことで、

  • 必要最小限のテストケースで

  • 最大限のカバレッジ(網羅性)を確保し、

  • 効率的に不具合を発見できます。


🎯 テスト技法の目的と役割

テスト技法は、次の2つのステップをサポートします。

  1. テスト分析(Test Analysis):何をテストすべきかを特定する

  2. テスト設計(Test Design):どのようにテストするかを決める

これにより、次のような作業を効率化できます。

  • テスト条件の定義

  • カバレッジ項目の特定

  • テストデータの導出(正のケース・負のケースを含む)

テスト技法は、網羅性を保ちながらテストケース数を最小化する「知的な省エネ手法」です。


⚫ ブラックボックステスト技法(Black Box Test Techniques)

ブラックボックステストは、仕様書や要件定義に基づいてテストケースを設計する技法です。

内部構造(コードや設計)は考慮しません。

特徴

  • 別名:仕様ベース技法(Specification-Based Techniques)

  • 入力と出力の関係に注目し、要件通りに動作するかを検証

  • 詳細な仕様書・要件定義が必要

  • コードが変更されても、要件が変わらない限りテストケースは有効

主な技法(いずれもK3レベル:適用が問われる)

  1. 同値分割法(Equivalence Partitioning)

  2. 境界値分析(Boundary Value Analysis)

  3. 状態遷移テスト(State Transition Testing)

  4. 判定表テスト(Decision Table Testing)

これらの技法は、限られたテストケースで効率的に不具合を見つけるための基礎となります。


⚪ ホワイトボックステスト技法(White Box Test Techniques)

ホワイトボックステストは、コードや内部構造に基づいてテストを設計する技法です。

主に開発者やテスト自動化エンジニアが使用します。

特徴

  • 別名:構造ベース技法(Structure-Based Techniques)

  • コードや設計を理解している人が適用可能

  • 設計や実装後に使用される

  • コードの流れを可視化してカバレッジを測定

主な技法(K2レベル:理解が問われる)

  1. ステートメントテスト(Statement Testing)

     → ステートメントカバレッジで測定

  2. ブランチテスト(Branch Testing)

     → ブランチカバレッジで測定

ホワイトボックステストは、コードの品質を高め、見落としを防ぐ役割を持っています。


🧠 経験ベーステスト技法(Experience-Based Test Techniques)

このカテゴリーは、テスターの経験・直感・ドメイン知識に基づいた手法です。

仕様やコードが不十分な場合でも、過去の経験をもとに重要な欠陥を発見できます。

特徴

  • 過去の類似システムでの経験を活かす

  • ドメイン知識や典型的な不具合パターンを利用

  • ブラックボックス・ホワイトボックス両方を補完する役割

主な技法(K2レベル)

  1. エラー推測(Error Guessing)

  2. 探索的テスト(Exploratory Testing)

  3. チェックリストベーステスト(Checklist-Based Testing)

特に、探索的テストは「計画+即興」の融合であり、短時間で高い効果を発揮する技法として注目されています。


✅ まとめ:3つのテスト技法カテゴリ

カテゴリ

基準

主な技法

レベル

ブラックボックス

仕様書・要件

同値分割、境界値分析、状態遷移、判定表

K3(適用)

ホワイトボックス

コード・構造

ステートメント、ブランチ

K2(理解)

経験ベース

テスターの経験

エラー推測、探索的、チェックリスト

K2(理解)

💡 学習のポイント

  • ブラックボックスは「要件」から、ホワイトボックスは「コード」から。

  • 経験ベースは、他の技法で漏れる不具合を補完。

  • K2/K3レベルの違いを意識して試験対策を。

これらの技法は今後の章でそれぞれ詳しく学習します。

🧭 ISTQBにおけるKレベルのおさらい

ISTQBでは、各学習項目に「知識レベル(Kレベル)」が定義されています。

これは**Bloomの分類法(教育心理学)**をもとにしており、理解の深さや試験で問われる内容を区別するために使われます。


🧩 K2 / K3 の意味と違い

レベル

名称

学習目標

試験で問われる内容

例題イメージ

K1

Remember(記憶)

用語や定義を覚える

用語の定義、概念の一致

「ブラックボックステストとは?」など

K2

Understand(理解)

概念や目的を理解する

意味の説明、特徴の比較

「ブラックボックスとホワイトボックスの違いは?」など

K3

Apply(適用)

学んだ知識を実際に使う

与えられた仕様からテストケースを導出

「この仕様書から境界値を求めよ」など

K4

Analyze(分析)

情報を分析して結論を導く

高度な分析問題(※Foundationではほぼ出題なし)

🧠 具体例で見る:K2とK3の違い

● K2(理解レベル)の例

質問:「ブラックボックステスト技法の特徴として正しいものはどれか?」

→ 要件に基づく、内部構造を考慮しない、仕様ベースの技法である、など概念理解が問われる。

● K3(適用レベル)の例

質問:「入力値が0〜100のとき、境界値分析を用いるとテストケースはいくつ必要か?」

→ 実際に技法を適用して計算・判断する力が問われる。


🏁 試験対策のポイント

  1. K2問題は「定義・違い・目的」を説明できるようにする。

     → 公式シラバスや用語集で用語の意味をしっかり押さえる。

  2. K3問題は「実際に手を動かして解く」練習をする。

     → 境界値分析、同値分割、判定表、状態遷移などはK3レベルなので、

      例題を多く解いて“使える知識”にしておく。

  3. 問題文に「どの技法を使うべきか?」と書かれていたら、それはK3の合図。

     → 技法名を覚えるだけでは不十分。適用方法まで理解する必要があります。


✅ Kレベルまとめ

比較項目

K2

K3

学習目標

理解する

適用する

問題の特徴

用語・概念の理解

実際の仕様を使った問題

出題例

「特徴を選べ」

「テストケース数を求めよ」

対策法

シラバスの理解・暗記

模擬問題・演習で実践練習

💬 一言アドバイス

「理解」から「使える」へ。

K2で概念を理解した上で、K3で手を動かす練習を積むことが、ISTQB試験合格のカギです。

次のチュートリアルでは、「ブラックボックステスト技法」の具体的な適用方法を解説します。

コメント

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