|
所在平台: Udemy |
课程主页: https://www.udemy.com/course/learn-java-unit-test-mockito-powermock-complete-tutorial/
课程评论:没有评论
**课程名称:** Learn Java Unit Test: Mockito & Powermock Complete Tutorial **课程概述:** 本课程基于 Java 16 和最新的 Mockito 3.x 及 Powermock 版本,深入讲解如何编写 Java 单元测试代码。课程涵盖了 Mockito 和 Powermock 的详细用法,旨在帮助学习者掌握单元测试的核心技能。 **课程内容摘要:** **第一部分:Mocking 概述** * **F.I.R.S.T. 原则介绍:** 快速 (Fast)、隔离 (Isolated)、可重复 (Repeatable)、自验证 (Self-validating)、及时 (Timely)。 * **Mocking 概念:** 理解什么是 Mocking 及其在单元测试中的作用。 * **模拟用户登录示例:** 通过一个简单的用户登录应用场景,演示 Mocking 的实际应用。 * **使用 Mockito 进行单元测试:** 学习如何使用 Mockito 为用户登录功能编写单元测试。 **第二部分:Mockito 详解** * **Mock 对象创建:** 如何创建 Mock 对象。 * **Deep Mock:** 深入 Mock 嵌套的对象。 * **Stubbing:** * `when...thenReturn` 及其变体 (`doReturn...when`)。 * `doNothing...when`。 * `when...thenThrow` 及其变体 (`doThrow...When`)。 * `when...thenAnswer` 及其变体 (`doAnswer...when`)。 * `when...thenCallRealMethod` 及其变体 (`doCallRealMethod...when`)。 * **Stubbing 多返回值:** 为 Mock 对象设置多个连续的返回值。 * **Stubbing 级联调用:** 模拟连续的方法调用。 * **Spying:** 部分 Mocking,调用真实方法。 * **Mockito 参数匹配器:** 使用参数匹配器进行更灵活的断言。 * **验证方法调用:** 确保特定方法被调用,以及调用的次数。 * **带 `VerificationMode` 的验证:** 指定验证模式,如 `times`、`atLeastOnce` 等。 * **Mockito 验证交互:** 验证对象之间的交互。 * **Mockito ArgumentCaptor & @Captor:** 捕获方法调用的参数。 * **@InjectMocks:** 自动注入 Mock 对象到待测试类。 **第三部分:Mockito Inline Module** * **Mockito & BDD 代码风格:** 使用 Behavior Driven Development (BDD) 的风格编写测试。 * **Mock 静态方法:** 使用 Mockito 模拟静态方法的行为。 * **Mock Final 类与方法:** 使用 MockitoMock 最终类和方法。 **第四部分:Powermock 详解** * **Powermock 介绍:** 了解 Powermock 及其设计理念。 * **Powermock 的必要性:** 解释何时以及为何需要使用 Powermock。 * **Powermock 模拟本地变量:** Mockit 无法模拟的本地变量。 * **Powermock 模拟静态方法:** 另一种 Mock 静态方法的强大工具。 * **Powermock 模拟 Final 类与方法:** Mockit 无法 Mock 的 Final 类与方法。 * **Powermock 模拟私有方法:** Mockit 无法 Mock 的私有方法。 * **Powermock Spying:** Powermock 的 Spying 功能。 **第五部分:JoCoCo** * **JoCoCo 单元测试覆盖率报告:** * **即时插桩 (On-the-fly instrumentation):** 实时收集覆盖率数据。 * **离线插桩 (Offline instrumentation):** 在编译后生成覆盖率报告。 **总结:** 本课程全面地介绍了 Java 单元测试中常用的 Mockito 和 Powermock 框架,从基础概念到高级用法,并通过丰富的实例展示了如何有效地编写和执行单元测试。同时,课程还介绍了 JoCoCo 用于生成单元测试覆盖率报告,帮助开发者提升代码质量和测试效果。
**** Please enable the vedio cc function (captions ) *****Learn Java Unit Test: Mockito & Powermock Complete Tutorial contains below agenda, this course base on JAVA 16 and latest mockito 3.x version and latest powermock most detials guidance how to write the unit test code. 1. overview understand mocking 1.1 F.I.R.S.T Principles introductionFastIsolatedRepeatableSelf-validatingTimely 1.2 what is mocking 1.3 simulate the user login application 1.4 unit test the user login function with mockito 2. Mockito details tutorial 2.1 how to mock objects 2.2 deep mock 2.3 mock object stubbling statement when...thenReturn doReturn...when doNothing...when when...thenThrow doThrow...When when...thenAnswer doAnswer...when when...thenCallRealMethod doCallRealMethod...when 2.4 Stubbing statement - multiple return values 2.5 Stubbing statement - Cascading code style 2.6 Spying 2.7 Mockito argument matcher 2.8 verify method invocations 2.9 verify with VerificationMode 2.10 Mockito verify Interactions 2.11 Mockito ArgumentCaptor & @Captor 2.12 @InjectMocks 3. Mockito Inline Module 3.1 Mockito & BDD code style 3.2 Mockito mock static method 3.3 Mockito mock final classes & methods 4. Powermock details tutorial 4.1 what is powermock 4.2 why need powermock 4.3 powermock mock local variables 4.4 powermock mock static methods 4.5 powermock mock final classes & methods 4.6 powermock mock private methods 4.7 powermock spying 5. JoCoCo 5.1 JoCoCo for unit test coverage report on-the fly instrumentation JoCoCo for unit test coverage report offline instrumentation