本文へスキップ

FUNDAMENTAL INFORMATION TECHNOLOGY ENGINEER

基本情報技術者の問題解説

テクノロジ系 標準 fe_a_s045_q003

問題

テスト駆動開発(TDD)の進め方として適切なものはどれか。

  1. まずテストコードを書き、テストが失敗することを確認してから実装コードを書く
  2. 全ての実装が完了してからテストコードを書く
  3. テストコードと実装コードを別チームが同時に開発する
  4. テストは手動で行い、自動テストは使用しない
出典:オリジナル問題|参考範囲:試験要綱Ver.5.5 / FEシラバスVer.9.2 科目A範囲

正解と解説

正解:まずテストコードを書き、テストが失敗することを確認してから実装コードを書く

正解はア。TDD(テスト駆動開発)は、先にテストコードを書き、そのテストが失敗することを確認してから、テストを通すための最小限の実装を行う開発手法である。その後、動作を保ったままコードを整理する。

流れは「Red → Green → Refactor」で覚える。Redは失敗するテストを書く、Greenはテストを通す、Refactorは重複や読みにくさを改善する段階である。テストが仕様の役割を果たすため、変更時の不具合検出にも役立つ。

イのように実装後にまとめてテストを書く方式とは順序が異なる。エの手動テスト中心という説明もTDDの特徴ではない。

この問題について

出典:オリジナル問題|参考範囲:試験要綱Ver.5.5 / FEシラバスVer.9.2 科目A範囲

IPAが公開するシラバス・試験範囲・公開問題の出題形式を参考にした独自作成問題。公式問題・過去問題の転載ではありません。

公式試験問題、過去問題、公式サンプル問題、市販教材の問題文を転載したものではありません。

参考範囲: シラバスVer.9.2参考

RELATED

関連問題