テスト駆動開発(TDD)
Test-Driven Development
てすとくどうかいはつ
テストコードを先に書き、そのテストを通過する最小限のコードを実装し、リファクタリングするサイクル(Red-Green-Refactor)を繰り返す開発手法。設計の改善と品質の作り込みを同時に実現する。XPのプラクティスの一つ。
Related
他の資格での定義
実装コードを書く前にテストコードを先に作成し、テストが成功するように実装を進める開発手法。TDDとも呼ばれ、テスト→実装→リファクタリングのサイクルを短期間で繰り返す。
テストコードを先に書き、そのテストを通過する最小限のコードを実装し、その後リファクタリングを行うサイクルを繰り返す開発手法。TDDと略され、XPやDevOpsのプラクティスとして広く採用されている。
テストコードを先に書き、そのテストを通過する最小限のコードを実装し、リファクタリングするサイクルを繰り返す開発手法。Red(テスト失敗)→Green(テスト成功)→Refactor(リファクタリング)のサイクルで品質と設計を向上させる。
テストコードを先に書き、そのテストを通過するコードを実装する開発手法。Red(テスト失敗)→Green(テスト成功)→Refactor(リファクタリング)のサイクルを繰り返す。コードの品質向上とリグレッション防止に効果的。
テストコードを先に書き、そのテストを通過する最小限のコードを実装し、リファクタリングするサイクルを繰り返す開発手法。Red(テスト失敗)→Green(テスト成功)→Refactor(リファクタリング)のサイクルで品質と設計を向上させる。
Past Exams
過去問での出題
過去問で 14 回出題(情報処理安全確保支援士試験 4・応用情報技術者試験 3・ITパスポート試験 2・データベーススペシャリスト試験 2・基本情報技術者試験 1・プロジェクトマネージャ試験 1・高度試験 午前Ⅰ 1)
- 令和6年度 秋期 データベーススペシャリスト試験 午前Ⅱ 問25(IPA の PDF を新しいタブで開きます)
- 令和6年度 秋期 情報処理安全確保支援士試験 午前Ⅱ 問23(IPA の PDF を新しいタブで開きます)
- 令和5年度 秋期 情報処理安全確保支援士試験 午前Ⅱ 問22選択肢(IPA の PDF を新しいタブで開きます)
- 令和4年度 秋期 応用情報技術者試験 午前 問49(IPA の PDF を新しいタブで開きます)
- 令和4年度 秋期 応用情報技術者試験 午前 問50(IPA の PDF を新しいタブで開きます)
- 令和4年度 秋期 高度試験 午前Ⅰ 問17(IPA の PDF を新しいタブで開きます)
- 令和4年度 ITパスポート試験 公開問題 問42選択肢(IPA の PDF を新しいタブで開きます)
- 令和3年度 春期 情報処理安全確保支援士試験 午前Ⅱ 問23(IPA の PDF を新しいタブで開きます)
- 令和3年度 ITパスポート試験 公開問題 問48選択肢(IPA の PDF を新しいタブで開きます)
- 平成30年度 春期 データベーススペシャリスト試験 午前Ⅱ 問25(IPA の PDF を新しいタブで開きます)
出典: 独立行政法人情報処理推進機構(IPA)の過去問題。問題文は IPA のサイトの PDF で確認できます。「選択肢」は、問題文ではなく選択肢に出たものです。用語名で照合しているため、関係の薄い問題が含まれることがあります。
Related
関連キーワードの用語
条件の組み合わせと、それに対応する処理(アクション)を表形式で整理する技法。複雑な条件分岐をもれなく網羅的に記述でき、仕様の漏れや矛盾を発見するのに有効。テスト設計にも活用される。
ウォーターフォールモデルの各開発工程に対応するテスト工程を対に配置した開発モデル。要件定義に受入テスト、基本設計にシステムテスト、詳細設計に結合テスト、実装に単体テストが対応する。各工程の整合性を確保する。
内部構造を考慮せず、入力と出力の関係からテストケースを設計する手法。同値分割、境界値分析、デシジョンテーブル、状態遷移テストなどの技法がある。機能仕様に基づいてテストする。
プログラムの内部構造(制御フロー、データフロー)に基づいてテストケースを設計する手法。命令網羅、分岐網羅、条件網羅、パス網羅などのカバレッジ基準がある。ロジックの正確性を検証する。
個々のモジュールやクラスの機能を独立して検証するテスト工程。ドライバやスタブを用いて、テスト対象のモジュールを単独で動作させる。開発者が主体となって実施し、コードレベルの不具合を検出する。
プログラム中のバグ(不具合・誤り)を発見し、原因を特定して修正する作業。テストで発見された問題に対して、デバッガなどのツールを活用しながら修正を行う。
