テスト駆動開発(TDD)とは?てすとくどうかいはつ
テスト駆動開発(TDD)とは、テストを先に書いて落ちることを確かめ、それを通す最小限の実装を入れ、動作を保ったまま整理する——この三拍子を数分単位で回す開発の進め方。仕様が実行可能な形でコードと並んで残るため、手を入れた瞬間に壊れたかどうかが分かる。設計手法ではない、という点が要点になる。
最終更新:2026-10-06
エンベデッドSPを最短で暗記・合格する →背景
不具合は見つかるのが遅いほど直す費用が跳ね上がる。とくに組込みでは、実機とオシロで追い込む段階に入ると1件あたりの調査時間が桁で増え、量産後なら回収まで視野に入る。テストを先に書いて机上で回せる範囲を広げれば、実機へ持ち込む前に落とせる不具合が増える——シラバスが設計・製造工程で問う、上流での品質作り込みの一形態でもある。
具体例
通信手順の解析処理を、実機なしでPC上で回せるよう入出力をバイト列の関数として切り出す。ハードに触る部分はスタブへ差し替え、CppUTestやUnityのような組込み向けテストフレームワークで境界値や異常系のフレームを与え、期待どおり弾くかを確かめる。
試験での引っ掛け
すべてを先にテストできるわけではなく、タイミングや電気的な挙動が絡む部分は実機での確認が要る。テストが通ることと要求を満たすことも別で、妥当性確認を代替しない。またTDDが保証するのは回帰の検出であって、アーキテクチャの良し悪しまでは面倒を見ない。
関連用語
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。