工程開發
springboot-tdd avatar

springboot-tdd

Spring Boot 應用程式的測試驅動開發 (TDD) 工作流程,支援 JUnit 5、Mockito、MockMvc 與 Testcontainers。

簡介

此技能為 Spring Boot 服務提供完整的 TDD 工作流程,專注於透過強大的單元、整合與持久層測試策略,維持 80% 以上的程式碼覆蓋率。它專為需要執行新功能、修復錯誤或進行重構,同時確保系統可靠性的軟體工程師與後端開發人員而設計。透過整合 JUnit 5、Mockito、MockMvc 與 Testcontainers 等標準工具,此技能引導 AI 遵循 Arrange-Act-Assert 模式,強制執行 JaCoCo 覆蓋率指標,並使用真實的資料庫容器來維護具確定性的測試環境。

  • 簡化 TDD 生命週期:編寫失敗測試、實現最小程式碼、重構並驗證覆蓋率。

  • 使用 MockMvc 設定 Web 層測試,以進行 RESTful API 端點驗證。

  • 利用 @DataJpaTest 與 Testcontainers 進行 Postgres/Redis 隔離,簡化持久層驗證。

  • 推廣最佳實作,包括使用 AssertJ 進行流暢斷言、參數化測試以涵蓋邊緣案例,以及使用測試資料建構器 (Builder) 來保持測試設定的整潔。

  • 包含適用於 Maven 與 Gradle 的 CI/CD 自動化指令片段,以確保持續整合的就緒性。

  • 支援 @SpringBootTest 整合測試,以模擬實際生產配置環境。

  • 提供清晰且可直接使用的常見 Spring Boot 測試場景範本。

  • 本技能假設使用 Java/Maven 或 Gradle 生態系統,並預期專案符合標準 Spring Boot 結構。

  • 適合重視可維護性與測試覆蓋率,且希望降低重構過程中退化風險的開發者。

  • 使用者應確保開發環境支援 Docker,以順利執行 Testcontainers。

  • 輸入為現有的服務邏輯或新需求規格;輸出為結構化的測試類別與覆蓋率報告。

  • 強調行為驅動測試而非實作細節,確保測試套件不會因程式碼結構變更而輕易失效。

倉庫統計

Star 數
169,716
Fork 數
26,299
Open Issue 數
184
主要語言
JavaScript
預設分支
main
同步狀態
閒置
最近同步時間
2026年4月29日 上午08:36
在 GitHub 查看