《Java工程师必读手册》——Java单元测试系列——Java单元测试技巧之编写流程(1)
前言 清代杰出思想家章学诚有一句名言:“学必求其心得,业必贵其专精。” 意思是:学习上一定要追求心得体会,事业上一定要贵以专注精深。做技术就是这样,一件事如果做到了极致,就必然会有所心得体会。作者最近在一个项目上,追求单元测试覆盖率到极致,所以才有了这篇心得体会。 上一篇文章《Java单元测试技巧之PowerMock》除了介绍单元测试基础知识外,主要介绍了“为什么要....

《Java工程师必读手册》——Java单元测试系列——Java单元测试技巧之编写流程(2)
二、 测试用例编写流程 通过上一章编写Java类单元测试用例的实践,可以总结出以下Java类单元测试用例的编写流程: 上面一共有3个测试用例,这里仅以测试用例testCreateUserWithNew(测试:创建用户-新)为例说明。 1. 定义对象阶段 第1步是定义对象阶段,主要包括定义被测对象、模拟依赖对象(类成员)、注入依赖对象....

《Java工程师必读手册》——Java单元测试系列——Java单元测试技巧之编写流程(3)
三、 定义被测对象 在编写单元测试时,首先需要定义被测对象,或直接初始化、或通过Spy包装……其实,就是把被测试服务类进行实例化。 1. 直接构建对象 直接构建一个对象,总是简单又直接。 2. 利用Mockito.spy方法 Mockito提供一个spy功能,用于拦截那些尚未实现或不期望被真实调用的方法,默认所有方法都是真....

《Java工程师必读手册》——Java单元测试系列——Java单元测试技巧之编写流程(4)
五、 注入依赖对象 当模拟完这些类成员对象后,我们需要把这些类成员对象注入到被测试类的实例中。以便在调用被测试方法时,可能使用这些类成员对象,而不至于抛出空指针异常。 1. 利用Setter方法注入 如果类定义了Setter方法,可以直接调用方法设置字段值。 2. 利用ReflectionTestUtils.setField方法注入....

《Java工程师必读手册》——Java单元测试系列——Java单元测试技巧之编写流程(5)
3. 模拟其它特殊方法 1) 模拟final方法 PowerMock提供对final方法的模拟,方法跟模拟普通方法一样。但是,需要把对应的模拟类添加到@PrepareForTest注解中。 2) 模拟私有方法 PowerMock提供提对私有方法的模拟,但是需要把私有方法所在的类放在@PrepareForTest注解中。 3....

《Java工程师必读手册》——Java单元测试系列——Java单元测试技巧之编写流程(6)
八、 验证依赖方法 在单元测试中,验证是确认模拟的依赖方法是否按照预期被调用或未调用的过程。Mockito提供了许多方法来验证依赖方法调用,给我们编写单元测试用例带来了很大的帮助。 1. 根据参数验证方法调用 1) 验证无参数方法调用 2) 验证指定参数方法调用 3) 验证任意参数方法调用 ...

《Java工程师必读手册》——Java单元测试系列——Java单元测试技巧之编写流程(7)
九、 验证数据对象 Junit测试框架中Assert类就是断言工具类,主要验证单元测试中实际数据对象与期望数据对象一致。在调用被测方法时,需要对返回值和异常进行验证;在验证方法调用时,也需要对捕获的参数值进行验证。 1. 验证数据对象空值 1) 验证数据对象为空 通过Junit提供的Assert.assertNull方法验证数据对象为空。 &...

《Java工程师必读手册》——Java单元测试系列——Java单元测试技巧之编写流程(8)
接上篇:https://developer.aliyun.com/article/1227536?spm=a2c6h.13148508.setting.29.148c4f0eQyO5tl十、 验证依赖对象 1. 验证模拟对象没有任何方法调用 Mockito提供了verifyNoInteractions方法,可以验证模拟对象在被测试方法中没有任何调用。 &a...

《Java工程师必读手册》——Java单元测试系列——Java单元测试技巧之编写流程(9)
接上篇:https://developer.aliyun.com/article/1227535?spm=a2c6h.13148508.setting.30.148c4f0eQyO5tl3. 模拟Lombok的log对象问题 Lombok的@Slf4j注解,广泛地应用于Java项目中。 在某些代码分支里,可能只有log记录日志的操作,为了验证这个分支逻辑被正确执行,需要在单元....

《Java工程师必读手册》——Java单元测试系列——Java单元测试技巧之编写流程(10)
接上篇:https://developer.aliyun.com/article/1227534?spm=a2c6h.13148508.setting.31.148c4f0eQyO5tl十二、 消除类型转换警告 在编写测试用例时,特别是泛型类型转换时,很容易产生类型转换警告。常见类型转换警告如下: 作为一个有代码洁癖的轻微强迫症程序员,是绝对不容许这些....

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。
Java工程师相关内容
- Java工程师职业规划
- Java工程师架构
- Java工程师学习
- 团队Java工程师
- spring Java工程师
- Java工程师转行
- Java工程师面试
- Java工程师专业
- 互联网Java工程师
- Java工程师面试题
- 阿里巴巴Java工程师
- 电子书阅读Java工程师
- Java大数据工程师
- 大数据Java工程师
- Java工程师电子书
- 互联网Java工程师进阶
- Java工程师手册经验
- Java工程师手册经验编码方法论
- Java工程师手册经验服务端乱象
- Java工程师手册经验服务端
- Java工程师手册编程技巧输入输出参数
- Java工程师手册单元测试powermock
- Java工程师手册单元测试json序列化
- Java工程师手册极客主义函数
- bat Java工程师
- Java工程师架构师
- 面试题Java工程师
- 秋招面试题Java工程师
- Java工程师手册
- Java工程师电子版
Java更多工程师相关
Java开发者
Java开发者成长课堂,课程资料学习,实战案例解析,Java工程师必备词汇等你来~
+关注