精通 Java 單元測試( Unit Testing ) – 使用 Spring Boot 和 Mockito

只需 40 個簡單步驟,即可學習使用 Spring Boot、Mockito、JsonAssert、Hamcrest 和 JsonPath 編寫出色的 Java JUnit 單元測試 

從這 4 小時的課程,你會學到

  • 你將學習如何從零開始使用 Spring Boot Starter Test 編寫出色的單元測試和整合測試。
  • 你將學習如何為與多層(Web、業務和資料)互動的 RESTful Web 服務編寫獨立的單元測試。
  • 你將學習如何使用最重要的單元測試註解:@SpringBootTest、@WebMvcTest、@DataJpaTest 和 @MockBean。
  • 你將學習如何使用 Spring Boot Starter Test 中的所有框架:JUnit、Spring Test、Spring Boot Test、AssertJ、Hamcrest、Mockito、JSONassert 和 JsonPath。

要求

  • 你擁有在快樂中學習的態度 🙂
  • 你應該具備 Ja​​va、JUnit、Spring、Spring Boot 和 JPA/Hibernate 的基本知識。
  • 我們將幫助你安裝 Eclipse,並快速上手 Maven 和 Tomcat。

課程說明

優秀的程式設計師會編寫優秀的單元測試。想為 Spring Boot REST API 編寫優秀的單元測試嗎? Spring Boot 測試?是的。分層單元測試?是的,當然。 Spring Boot 整合測試?是的。 Mockito?是的。 JsonAssert、Hamcrest Matchers 和 JsonPath?是的,都包含在內。

學員評價:

5 ⭐️ – 這是一門非常全面的 Spring Boot 測試入門課程,涵蓋了 Mockito、JUnit、JsonAssert、Spring Data JPA、REST、設計模式等等。非常有價值的課程。謝謝。

5 ⭐️ – 這是一門非常出色且切中要點的單元測試課程,並附有很好的參考資料。

5 ⭐️ – 對於初學者和希望提陞技能的經驗豐富的Java開發人員來說,這都是一門非常棒的課程。講師知識淵博,不僅能讓課程保持吸引力,還能提供大量實用技巧。強烈推薦!

5 ⭐️ – 這是一門學習 JUnit 測驗的絕佳課程。課程內容豐富,範例清晰,詳細講解了編寫測試案例的各種場景。如果你想寫 Java 測試案例,那麼這門課絕對值得一學。

5 ⭐️ – 本課程是使用 Spring Boot、Mockito 以及其他一些有助於編寫高效測試的庫進行單元測試和整合測試的絕佳入門介紹。課程內容易於理解,並提供了大量參考資料,方便學員尋找更多資訊。

5 ⭐️ – 新客戶專案需要用到它。這是個很棒的資源,提供了簡潔明了的微服務 JUnit 教學。

5 ⭐️ – 我之前被單元測驗的概念搞得暈頭轉向,這門課程幫我理清了思路。它用簡潔明了的方式解釋了什麼時候需要單元測試,以及如何在應用程式中建立單元測試。

課程概述

Spring Boot 是開發 RESTful 服務最受歡迎的框架。它透過 Spring Boot Starter Test 提供了強大的單元測試功能。 Mockito 是最受歡迎的模擬框架。 JUnit 是最受歡迎的 Java 單元測試框架。

在本課程中,您將學習如何使用 Spring Boot Starter Test、Mockito 和 JUnit 為簡單的 RESTful 服務編寫出色的單元測試。您將學習如何為與 Web、業務和資料等多個層互動的 RESTful Web 服務編寫獨立的單元測試。您還將學習如何使用記憶體資料庫 H2 編寫整合測試。

您將透過 40 個簡單的步驟逐步建立單元測試。本課程是您學習使用 Spring Boot 和 Mockito 框架進行單元測試的理想入門課程。

您將使用 Spring(依賴管理)、Spring Boot、Maven(依賴管理)、Eclipse(IDE)、記憶體資料庫 H2 和 Tomcat 嵌入式 Web 伺服器。我們將幫助您完成所有這些工具的設定。

您將使用 Spring Boot Starter Test 中包含的所有框架——JUnit、Spring Test、Spring Boot Test、AssertJ、Hamcrest、Mockito、JSONassert 和 JsonPath。

您將學習使用最重要的單元測試註解——@RunWith(SpringRunner.class)、@SpringBootTest、@WebMvcTest、@DataJpaTest 和 @MockBean。

課程亮點

Section 1 – 使用 Mockito 學習模擬

  • 步驟 01:使用 Spring Initializr 設定項目
  • 步驟 02:為一個簡單的業務服務撰寫單元測試
  • 步驟 03:設定一個呼叫資料服務的業務服務
  • 步驟 04:使用 Stub 寫你的第一個單元測試
  • 練習 – 更新測驗 2 和 3
  • 步驟 05:練習解答 – 更新測驗 2 和 3 以使用 Stub – Stub 的問題
  • 步驟 06:使用 Mockito 編寫具有模擬功能的單元測試
  • 練習 – 更新測試 2 和 3 以使用 Mockito
  • 步驟 07:練習解答 – 更新測驗 2 和 3 以使用 Mockito
  • 步驟 08:更多重構 – @Mock、@InjectMocks 和 @RunWith(MockitoJUnitRunner.class)
  • 步驟 09:Mockito 使用技巧 – 多個返回值和特定參數匹配器
  • 步驟 10:Mockito 使用技巧 – 參數匹配器
  • 步驟 11:Mockito 使用技巧 – 驗證方法調用
  • 步驟 12:Mockito 使用技巧 – 參數捕獲( Capture )
  • 步驟 13:Mockito 使用技巧 – 多次呼叫時的參數捕獲
  • 步驟 14:Spy 簡介
  • 步驟 15:Mockito 常見問題解答

Section 2 – 使用 Spring Boot 和 Mockito 對 RESTful 服務進行單元測試

  • 步驟 01:創建 Hello World 控制器
  • 步驟 02:使用 Mock MVC 測試 Hello World 控制器
  • 步驟 03:使用響應匹配器檢查狀態和內容
  • 步驟 04:在 Item 控制器中建立基本 REST 服務
  • 步驟 05:對 Item 控制器和基本 JSON 斷言進行單元測試
  • 步驟 06:深入研究 JSON 斷言
  • 步驟 07:編寫與業務層通訊的 REST 服務
  • 步驟 08:編寫模擬業務層的 REST 服務單元測試
  • 步驟 09:使用 JPA、Hibernate 和 H2 準備資料層
  • 步驟 10:建立 Item 實體並使用 data.sql 填入數據
  • 步驟 11:建立與資料庫通訊的 RESTful 服務
  • 步驟 12:使用 Mock MVC 為 Web 層控制器編寫單元測試
  • 步驟 13:練習及解答 – 為業務層編寫單元測試 – 模擬
  • 步驟 14:為資料層編寫單元測試 – 資料 JPA 測試
  • 步驟步驟 15:使用 @SpringBootTest 編寫整合測試
  • 步驟 16:提示:使用 @MockBean 模擬不需要互動的依賴項!
  • 步驟 17:提示:建立不同的測試配置
  • 步驟 18:為其他請求方法編寫單元測試
  • 步驟 19:重構 SomeBusinessImpl 以使用函數式編程( Functional Programming )
  • 步驟 20:使用 Hamcrest 實現更好的斷言(  Assertions ) – HamcrestMatcherTest
  • 步驟 21:使用 AssertJ 實現更好的斷言 – AssertJTest
  • 步驟 22:使用 JSONPath 實作更好的斷言 – JSONPathTest
  • 步驟 23:更便利的靜態導入
  • 步驟 24:提示:使用 Eclipse 測量測試覆蓋率
  • 步驟 25:提示:密切注意單元測試的效能!
  • 步驟 26:編寫優秀的單元測試

立即開始學習。點擊“註冊”按鈕!

目標受眾

  • 是一位 Spring/Spring Boot/Java 程式設計師,並且想要為您的 RESTful 服務編寫出色的單元測試。
  • 您想要使用 Mockito 編寫出色的單元測試。
  • 您想要了解使用 JUnit、Mockito 和 Spring Boot Starter Test 編寫優秀單元測試的最佳實踐。
  • 您想要學習如何使用 Hamcrest Matchers、JSON Assert、Assert J 和 JSON Path 程式庫編寫優秀的斷言。

講師簡介

in28Minutes Official Learners – JDevOps、Azure、GCP、Docker、Kubernetes、Java 和 Spring Boot ( 更多講師主講課程介紹 )

in28minutes 的創辦人 Ranga Karanam 擁有 20 年的技術經驗,涵蓋架構、設計和程式設計。我們致力於協助學習者邁入現代雲端原生技術,並掌握 AWS、Azure、Google Cloud、Docker、Kubernetes 等技術。

當學習者在領英上關注我們,或聯絡我們,分享他們獲得第一份工作、升遷或大幅加薪的經驗時,我們感到無比欣慰。


Ranga 擁有多雲認證,包括 Google Cloud 認證專業雲端架構師、Google Cloud 認證助理雲端工程師、AWS 認證雲端從業人員、Azure Fundamentals 認證 AZ-900、DP-900 和 AI-900。

我們的課程涵蓋雲端認證(AWS、Azure、Google Cloud Platform – GCP)、DevOps、全端(React、Angular)、無伺服器、程式設計以及使用 Java 和 Spring Boot 進行微服務開發。

我們的熱門課程包括:

我們提供專注於 Java 框架(Spring、Spring Boot、Spring MVC、Hibernate)的課程。[學習路徑 00 至 06,涵蓋 DevOps、全端、雲端、Spring Boot 和 Java,詳情請見下方常見問題解答]

我們採用基於問題解決的循序漸進實踐教學方法,並結合實際應用範例。

我們提供豐富的 Spring Boot 課程,涵蓋 API 和微服務創建、雲端部署(AWS、Azure、Docker、Kubernetes、Azure)以及與全端前端框架(React 和 Angular)整合。

學習途徑

[學習路徑00] – DevOps

[學習路徑01] – Spring 和 Spring Boot Web 應用程式 & API 開發者

[學習路徑02] – 具備 Spring Boot、React 和 Angular 的全端開發人員

[學習路徑03] – 具備 Spring Boot、 Docker 和 Kubernetes 的雲端微服務

[學習路徑04] – 具備 Spring Boot、 AWS、 Azure 和 PCF 的雲端開發人員

[學習路徑05] – 學習配合 Microservices、 Docker 和 Kubernetes 的 AWS

[學習路徑06] – 獲得 AWS 認證

我們的信仰

最好的課程是互動和有趣的。 建立高品質應用的基礎最好是在學習的時候培養。

我們的方法

我們遵循 80-20 原則。我們會深入討論 80% 時間使用的 20% 內容。我們會簡單介紹其他內容,讓你掌握足夠的知識,以便自行探索更多內容。

基於問題解決方案的循序漸進實踐學習。

字幕:簡中、英文

  • 想要了解如何將英文字幕自動翻譯成中文? 請參考這篇 How-To

  • Udemy 永久擁有課程 許多課程約 NT400(點擊連結看更多)
  • 年訂閱每月 NT350(再享特別優惠:年度訂閱首年享 25% 折扣) 🌈 悠遊 Udemy 的 26000+ 門課,最大化學習 ( 原價 NT635/月 )
  • Udemy 現在越來越多課程有中文字幕,請參考 Soft & Share 中文線上課程
  • 手機上點選優惠連結看到的價格比電腦上看到的貴
  • $代表當地貨幣, 如在台灣為 NT
  • 點選”報名參加課程”有可能因瀏覽器 cookies 轉久一點或回報錯誤而無法連上,請稍等刷新或重新點選就會出現

報名參加課程

Sponsored by Udemy


也許你會有興趣

不受 FB 演算法影響,歡迎透過 e-mail 訂閱網站更新

Comments are closed.

由 WordPress.com 建置.

Up ↑

探索更多來自 Soft & Share 的內容

立即訂閱即可持續閱讀,還能取得所有封存文章。

Continue reading