akita-techlab.com

システム開発の技術情報サイト

単体テスト工程について

システム開発における 単体テスト(ユニットテスト) は、最小単位(関数・メソッド・クラスなど)の機能が正しく動作するかを検証する工程です。バグの早期発見と品質担保に重要な役割を果たします。


✅ 単体テストで実施する内容

作業項目内容
1. テスト対象の識別モジュール・クラス・メソッド単位に対象を特定
2. テストケース作成正常系・異常系・境界値などの観点からケースを設計
3. 入力値の設定テスト用のパラメータ・入力データを定義
4. 期待結果の定義出力値、戻り値、副作用(DB更新など)を定義
5. テストコード実装テストフレームワークを用いて自動実行用コードを作成(例:xUnit, NUnit, MSTestなど)
6. モックの利用(必要に応じて)外部依存(DB/APIなど)を切り離してテスト実行
7. テスト実行と確認テストを自動実行し、期待値と一致するか確認
8. テスト結果の記録テストログ/結果一覧を保存(成功/失敗、エラーメッセージなど)
9. バグの報告・修正失敗時の不具合の修正と再テスト

🧪 単体テストの分類

テストタイプ内容
正常系テスト正しい入力が期待通りに動作するか会員登録で全項目入力 → 登録成功
異常系テスト不正な入力や欠損時に正しくエラーになるか未入力・桁数超過 → エラー表示
境界値テスト入力の限界値前後で正しく処理されるか年齢:0歳、1歳、120歳、121歳など
例外処理テストエラー発生時に例外が正しく処理されるかDB接続失敗時 → ログ出力+画面エラー表示

📂 成果物の一例

成果物内容
テストコードテストクラス(例:UserTests.cs)内に各メソッドのテスト
テストケース一覧表Excelなどで入力条件、期待結果、テスト結果を管理
実行ログ/レポート自動実行結果(成功/失敗、実行時間など)
不具合報告書発見されたバグの詳細、修正内容、再テスト結果

🛠️ 使用ツール例(言語別)

言語テストフレームワーク
C# (.NET)MSTest, NUnit, xUnit
JavaJUnit, TestNG
JavaScriptJest, Mocha
Pythonunittest, pytest
PHPPHPUnit

🔁 テストの自動化(CI/CD連携)

  • GitHub Actions / Azure DevOps / Jenkins などのCIツールでテストを自動化
  • プルリクエストやコミット時に自動でユニットテストを実行し、品質を担保

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です