← 教科書一覧へテスト技法と結合・性能検証
頻出約 16 分システム開発技術
概要
このユニットでは、外部仕様に着目するブラックボックステスト、複数モジュールを組み合わせる統合テスト、応答時間や処理量を測る性能テスト、高負荷時の挙動を見る負荷テスト、修正後に既存機能が壊れていないか確かめる回帰テストを学ぶ。部品を統合して品質を測る段階の技法・工程・観点であり、ITパスポートでも頻出の重要分野である。
用語(5)
ブラックボックステスト
内部構造を見ず、入力と出力(外部仕様)が正しいかだけを確認するテスト技法。
ブラックボックステストは、プログラムの中身(処理の流れやコード)を意識せず、「ある入力を与えたら、仕様どおりの出力が返るか」だけに注目するテスト技法です。利用者目線で機能が要求どおり動くかを確かめます。
試験では、内部構造に着目するホワイトボックステストとの対比が頻出です。ブラックボックスは外部仕様ベース、ホワイトボックスは内部ロジックベースと覚えましょう。代表的な技法に、入力範囲を区切る同値分割や、境界の前後を狙う境界値分析があります。
たとえ自動販売機をテストするとき、内部の配線は見ずに「100円入れてボタンを押したら正しい飲み物が出るか」だけを確認するようなもの。中身を知らなくても入出力で判断します。
記憶フックブラックボックステストといえば中身を見ず入出力(外部仕様)で確認
統合テスト
単体検証済みの複数モジュールを結合し、連携が正しく動くか確認する工程。
統合テスト(結合テスト)は、それぞれ単体テストを通ったモジュールを組み合わせ、モジュール間でデータの受け渡しや呼び出しが正しく行われるかを確認する工程です。単体では問題なくても、つなぐと不具合が出ることを検出します。
試験では、単体テスト→統合テスト→システムテスト→受入れテストという工程の順序が問われます。下位から組み上げるボトムアップ、上位から組むトップダウンなどの結合方式がある点も押さえておきましょう。
たとえ車の部品検査を終えたエンジン・ブレーキ・ハンドルを実際に組み付け、ペダルを踏むと連動して止まるかなど、部品どうしの連携を確かめる試走のようなものです。
記憶フック統合テストといえば複数モジュールを結合し連携を確認する工程
性能テスト
応答時間や処理量など、システムの処理性能(非機能要件)を測定し評価するテスト。
性能テストは、統合されたシステムが実用上必要な速さ・量で処理できるかを測るテストです。応答時間(レスポンスタイム)や単位時間あたりの処理量(スループット)などの指標を測定し、要求水準を満たすか評価します。
試験では、「機能が正しいか」ではなく「どれだけ速く・多く処理できるか」という非機能要件を確かめる点が問われます。機能テストとの違い、また高負荷条件を扱う負荷テストとの関係を整理しておくとよいでしょう。
たとえ新しく開通した高速道路で「制限速度どおりに走れるか」「渋滞なくスムーズに流れるか」を計測点で測るようなもの。正しく通れるかではなく、どれだけ速く流れるかを見ます。
記憶フック性能テストといえば応答時間や処理量を測る非機能の検証
負荷テスト
想定上限やそれを超える高負荷をかけ、システムの挙動や限界を確認するテスト。
負荷テストは、多数の同時アクセスや大量データなど、高い負荷をかけた状態でシステムが正常に動き続けるか、どこまで耐えられるかを確認するテストです。性能テストの一種・延長として位置づけられます。
試験では、通常の性能測定よりも厳しい条件で耐久性や限界点を見るのが負荷テストだと押さえましょう。ピーク時アクセスでも落ちないか、処理が破綻しないかといった信頼性・可用性の確認につながる観点が問われます。
たとえ橋に何台ものトラックを同時に載せ、設計上の重さや想定を超える重量まで耐えられるかを試す耐荷重テストのようなものです。
記憶フック負荷テストといえば高負荷をかけて限界・耐久を確認
回帰テスト
修正や機能追加の後、既存の機能が壊れていないか再確認するテスト。
回帰テスト(リグレッションテスト)は、プログラムを修正・改良したときに、その変更が原因でこれまで正常だった他の機能に不具合(デグレード)を起こしていないかを再度確認するテストです。
試験では、新しく直した箇所だけでなく「既存機能への悪影響がないか」を確かめるのが目的だと問われます。変更のたびに繰り返し実施するため、テストの自動化と相性がよい点も知っておくと役立ちます。
たとえ家の一部屋をリフォームした後、他の部屋の電気や水道がちゃんと使えるかを一通り見て回るようなもの。直した所以外に影響が出ていないか確認します。
記憶フック回帰テストといえば修正後に既存機能が壊れていないか再確認
まとめ
要点
- ブラックボックステストは外部仕様(入出力)に基づく技法で、内部構造を見るホワイトボックステストと対をなす。
- テスト工程は単体→統合→システム→受入れの順で進み、統合テストはモジュール間連携の検証を担う。
- 性能テストは応答時間・処理量などの非機能を測り、負荷テストはさらに高負荷条件で限界・耐久を確認する。
- 回帰テストは修正後に既存機能が壊れていないか(デグレード)を再確認する変更管理の検証である。
- 技法(ブラックボックス)→工程(統合)→観点(性能・負荷)→変更検証(回帰)へと、品質を測る段階が広がる。
記憶フック一覧
- ブラックボックステスト: ブラックボックステストといえば中身を見ず入出力(外部仕様)で確認
- 統合テスト: 統合テストといえば複数モジュールを結合し連携を確認する工程
- 性能テスト: 性能テストといえば応答時間や処理量を測る非機能の検証
- 負荷テスト: 負荷テストといえば高負荷をかけて限界・耐久を確認
- 回帰テスト: 回帰テストといえば修正後に既存機能が壊れていないか再確認
関連の過去問演習は今後のアップデートで追加予定です。