【ISTQB /JSTQB ALTA 解説】4.2 機能テスト(Functionality Testing)をわかりやすく解説

JSTQB Advanced Level Test Analyst

ISTQB Advanced Test Analyst シラバス第4章では「品質特性(Quality Characteristics)」について学びます。

今回はその中の一つ「機能性(Functionality)テスト」に焦点を当てます。

この章では、主に次の3つの観点から機能テストを理解します。

  1. 機能の正確性(Functional Correctness)

  2. 機能の適切性(Functional Appropriateness)

  3. 機能の完全性(Functional Completeness)

それぞれを順番に見ていきましょう。


🔹 4.2.1 機能の正確性テスト(Functional Correctness Testing)

概要

正確性(Correctness)」とは、その機能が要求通りに動作しているかを確認することです。

すなわち「実装されたものが、仕様書どおりに正しく作られているか?」を検証します。

具体例

たとえば「ユーザー名を入力するテキストフィールド」がある場合:

  • 入力できる文字数は制限通りか?

  • 英数字以外を入力した場合の動作は正しいか?

  • 空欄のまま送信した場合、エラーメッセージが出るか?

これらを確認することで、要求仕様に正しく準拠しているかを判断します。

テストアナリストの役割

テストアナリストは、要求仕様書やユーザーストーリーを参照し、

適切なブラックボックステスト技法(同値分割、境界値分析、決定表など)を活用して

仕様の正しさを網羅的に確認します。


🔹 4.2.2 機能の適切性テスト(Functional Appropriateness Testing)

概要

適切性(Appropriateness)」とは、実装された機能がその目的や文脈に合っているかを確認するテストです。

正確性が「間違っていないか」を確認するのに対し、適切性は「正しくても、それは本当にユーザーの目的に合っているか?」を確認します。

具体例

たとえば、ユーザー登録画面で「氏名」を入力する欄がある場合:

  • 「姓」と「名」が別々の入力フィールドになっているか?

  • 「姓と名を1つのフィールドに入れる」ような仕様は、システム設計として妥当か?

  • 入力チェックは目的に適しているか?(例:姓に数字を入れるとエラーになるか)

これらは「適切性テスト」の対象です。

補足

適切性は、ユーザー視点での受け入れ基準(Acceptance Criteria)とも関係があります。

たとえ正確に動作していても、ユーザーの期待や使用シナリオに合わなければ「不適切」と判断される場合があります。


🔹 4.2.3 機能の完全性テスト(Functional Completeness Testing)

概要

完全性(Completeness)」とは、要求されているすべての機能が実装・テストされているかを確認するテストです。

つまり、「漏れがないか?」をチェックします。

具体例

あるユーザーストーリーに「ユーザーがパスワードをリセットできる」機能が含まれているとします。

テストすべき観点には次のようなものがあります:

  • パスワード再設定メールの送信機能

  • 有効期限付きのリンク生成機能

  • 新しいパスワード入力と再入力の一致確認

  • 不正アクセス防止(トークンの無効化など)

これらすべてが実装されているかを確認し、テストケースが漏れていないかを追跡します。

トレーサビリティとカバレッジ

完全性を確保するために重要なのが「トレーサビリティ」です。

要求(Requirement)とテストケース、そして実行結果をリンクさせて、

「どの要求がテストされ、どれが未テストか」を明確にします。

テスト管理ツール(Jira、TestRail、Xrayなど)を使えば、

要求ごとの**テストカバレッジ(coverage)**を自動で確認できます。


🔹 機能テスト全体のまとめ

項目

内容

目的

機能の正確性

仕様通りに動作しているか

要求への整合性を確認

機能の適切性

機能が目的に合っているか

ユーザー体験との整合性

機能の完全性

必要な機能がすべて実装されているか

要求の抜け漏れ防止

これら3つの観点を総合的に確認することで、

テストアナリストは「システムがユーザーにとって正しく・適切に・完全である」ことを保証します。


🔹 まとめ:テストアナリストの着眼点

  • 機能要件の正確性・適切性・完全性の3方向から検証する

  • テスト技法を組み合わせて、効果的な網羅性を確保する

  • トレーサビリティを活用して要求とテストの対応を明確にする

  • Agile環境では、ユーザーストーリー単位でこれらの観点をレビュー・テストする

こうした取り組みが、最終的に高品質な製品とユーザー満足度の向上につながります。

コメント

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