テストケース(テストデータと予想結果)とは?てすとけーす
テストケース(テストデータと予想結果)とは、入力と期待する出力を対にして、実行前に書き出しておく一組。支援士で問われるのは作り方そのものではなく、テストケースをいつ・何を根拠に作るかである。テスト駆動開発では実装コードより先にテストコードとして書き、仕様の記述と設計の指針を兼ねさせる。一方、脆弱性を探すファジングは期待する出力をあらかじめ持たず、異常終了やメモリ破壊といった挙動そのものを観測するため、仕様から導いたテストケースとは設計の思想が根本的に違う。
最終更新:2026-10-06
情報処理安全確保支援士を最短で暗記・合格する →背景
仕様どおりに動くことを確かめるケースをいくら積み上げても、仕様に書かれていない入力に対する振る舞いは確かめられない。脆弱性はまさにそこに潜むので、セキュア開発では仕様から導いた正常系のケースと、仕様の外側を機械的に叩く手法とを別立てで用意する。支援士の午前Ⅱはこの二本立てを前提に、テスト技法の名前と目的を対応させる設問を繰り返し出しており、テスト駆動開発の特徴を問う問題は平成30年度春期・令和3年度春期・令和6年度秋期と、ほぼ同じ選択肢で3度出題されている。
具体例
令和4年度秋期午前Ⅱ問22では、二つの条件の論理和で分岐する流れ図に対し、判定条件網羅(分岐網羅)を満たすテストケースの組合せが問われた。正解は(A=1, B=1)と(A=7, B=1)で、前者はどちらの条件も成り立たず判定が偽、後者は一方が成り立って真になり、真と偽の両方の分岐を1回ずつ通る。どちらも真になる組や、どちらも偽になる組では分岐網羅にならない。
試験での引っ掛け
最も繰り返されているのはテスト駆動開発の定義で、誤答として「最初のテストで、なるべく多くのバグを摘出する」「テストケースの改善を繰り返す」「テストでのカバレージを高めることを目的とする」が毎回並ぶ。正解は「プログラムを書く前にテストコードを書く」であり、網羅率の向上は結果として付いてくるだけで目的ではない。網羅基準では、判定条件網羅(各判定の真と偽を1回ずつ通す)と条件網羅(個々の条件の真偽をすべて試す)の混同が狙われる。加えて、令和3年度秋期午前Ⅱ問22の探索的テストの設問では、事前に詳細なケースを用意せず動かしながら次を決める手法であることが問われ、モデルからケースを自動生成するモデルベースドテスト、条件を組み合わせる実験計画法、状態と遷移からケースを導く状態遷移テストが誤答に並ぶ。「ケースを先に作らない」テストが存在する点を落とすと、この一群を取り違える。
関連用語
出典・参考
公式シラバスの4 開発技術 > 3. 実装・構築 > (8) ソフトウェアユニットのテストに掲載されている用語です。
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。