テスト駆動開発とは?
テスト駆動開発とは、実装コードより先にテストコードを書き、それを通すように実装を進める開発の進め方。
データベーススペシャリスト試験の過去問では3回出題されています(2016年度〜2024年度)。
テストくどうかいはつ
テスト駆動開発の意味
実装コードより先にテストコードを書き、それを通すように実装を進める開発の進め方。
テスト駆動開発の具体例
在庫引当のストアドプロシージャを作る際、先に「在庫不足なら引当0件で例外を返す」テストを書いてから実装した。在庫ちょうど・0・マイナスといった境界を先に列挙するため仕様の抜けに実装前に気づけ、後で在庫表を分割したときも同じテストで退行を検出できた。
テスト駆動開発は試験でどう引っ掛けられる?
テストを先に書くのが要点。実装後にテストを書くのは通常の単体テストであってTDDではない。
テスト駆動開発と関連する用語
テスト駆動開発が出た過去問
XP(eXtreme Programming)のプラクティスの一つに取り入れられているものはどれか。
正解:ペアプログラミング
要点:ペアプログラミングはXPの代表的プラクティス
XPのプラクティスには、ペアプログラミング、テスト駆動開発、リファクタリング、継続的インテグレーション、小さなリリースなどがある。ペアプログラミングは2人が1台の端末で役割を交代しながらコードを書き、その場でレビューしながら品質を高める手法である。
出典:平成28年度 春期 データベーススペシャリスト試験 am2 問25(IPA)エクストリームプログラミング(XP: eXtreme Programming)における“テスト駆動開発”の特徴はどれか。
正解:プログラムを書く前にテストケースを作成する。
要点:テスト駆動開発は実装より先にテストを書く進め方
テスト駆動開発では、実装よりも先に満たすべき仕様を表すテストコードを書き、それが失敗することを確かめてから、通るように実装を進める。仕様が明確になり、リファクタリングも安全に行えるようになる点が狙いである。
出典:平成30年度 春期 データベーススペシャリスト試験 am2 問25(IPA)エクストリームプログラミング(XP:Extreme Programming)における"テスト駆動開発"の特徴はどれか。
正解:プログラムコードを書く前にテストコードを書く。
要点:テスト駆動開発は実装より先にテストコードを書く
テスト駆動開発は、実装よりも先に、満たすべき振る舞いを検証するテストコードを書くことを出発点とする。最初はテストが失敗する状態から始め、それを通す最小限のコードを書き、動作を保ったまま整理するという短い周期を繰り返す。テストが仕様の記述と設計の指針を兼ねる点が本質であり、網羅率の追求そのものが目的ではない。
出典:令和6年度 秋期 データベーススペシャリスト試験 am2 問25(IPA)
最終更新:2026-08-25/解説は資格暗記が独自に作成しています。 過去問の出典は各問題に記載のとおりです。