-
内容大纲
本书全面介绍JUnit 5的新特性及其主要应用。全书共22章,分为五部分。第一部分介绍JUnit的核心、JUnit的体系结构、从JUnit 4向JUnit 5迁移、软件测试原则等内容;第二部分介绍软件测试质量、用stub和mock object进行测试、容器内测试等内容;第三部分介绍用Maven和Gradle工具运行JUnit测试、IDE对JUnit 5的支持、JUnit 5的持续集成等内容;第四部分介绍JUnit 5扩展模型,表示层测试,Spring、Spring Boot和REST API以及数据库应用程序的测试等内容;第五部分介绍使用JUnit 5进行测试驱动开发和行为驱动开发,以及用JUnit 5实现测试金字塔策略等内容。
本书既适合刚接触JUnit框架的Java开发人员阅读,也适合想要了解JUnit 5新特性的、经验丰富的JUnit开发人员学习,尤其适合企业级Java开发人员阅读。本书还可作为高等院校学生“软件测试”课程的参考用书。 -
作者介绍
克特林·图多塞,拥有计算机科学专业的博士学位,担任过Java高级开发员和技术团队带头人,有超过15年的Java开发经验。 -
目录
第一部分 JUnit
第1章 JUnit起步
1.1 证明程序的可运行性
1.2 从零开始
1.2.1 单元测试框架的规则
1.2.2 添加单元测试
1.3 安装JUnit
1.4 使用JUnit测试
1.5 小结
第2章 探索JUnit的核心
2.1 核心注解
2.1.1 @DisplayName注解
2.1.2 @Disabled注解
2.2 嵌套测试
2.3 标记测试
2.4 断言
2.5 假设
2.6 JUnit 5的依赖注入
2.6.1 TestInfoParameterResolver
2.6.2 TestReporterParameterResolver
2.6.3 RepetitionInfoParameterResolver
2.7 重复测试
2.8 参数化测试
2.9 动态测试
2.10 使用Hamcrest匹配器
2.11 小结
第3章 JUnit的体系结构
3.1 软件体系结构的概念和重要性
3.1.1 故事一:电话簿
3.1.2 故事二:运动鞋制造商
3.2 JUnit 4的体系结构
3.2.1 JUnit 4模块化
3.2.2 JUnit 4运行器
3.2.3 JUnit 4规则
3.2.4 JUnit 4体系结构的缺点
3.3 JUnit 5的体系结构
3.3.1 JUnit 5模块化
3.3.2 JUnit Platform
3.3.3 JUnit Jupiter
3.3.4 JUnit Vintage
3.3.5 JUnit 5体系结构的全景
3.4 小结
第4章 从JUnit 4向JUnit 5迁移
4.1 从JUnit 4向JUnit 5跨越
4.2 所需的依赖项
4.3 注解、类和方法
4.3.1 等价的注解、类和方法
4.3.2 分类和标记
4.3.3 迁移Hamcrest匹配器功能
4.3.4 规则与扩展模型
4.3.5 自定义规则
4.4 小结
第5章 软件测试原则
5.1 单元测试的必要性
5.1.1 带来更高的测试覆盖率
5.1.2 提高团队的工作效率
5.1.3 检测出衰退迹象和减少调试次数
5.1.4 自信地重构
5.1.5 改进实现
5.1.6 文档化预期行为
5.1.7 启用代码覆盖率和其他指标
5.2 测试类型
5.2.1 单元测试
5.2.2 集成测试
5.2.3 系统测试
5.2.4 验收测试
5.3 黑盒测试和白盒测试的对比
5.3.1 黑盒测试
5.3.2 白盒测试
5.3.3 黑盒测试和白盒测试的优点和缺点
5.4 小结
第二部分 不同的测试策略
第6章 测试质量
6.1 测试覆盖率度量
6.1.1 测试覆盖率简介
6.1.2 代码覆盖率度量工具
6.2 编写易于测试的代码
6.2.1 理解公共API契约
6.2.2 减少依赖
6.2.3 创建简单的构造方法
6.2.4 遵循迪米特法则
6.2.5 避开隐藏的依赖项和全局状态
6.2.6 优先使用泛型方法
6.2.7 组合优于继承
6.2.8 多态优于条件
6.3 测试驱动开发
6.3.1 调整开发周期
6.3.2 TDD的两个核心步骤
6.4 行为驱动开发
6.5 突变测试
6.6 开发周期中的测试
6.7 小结
第7章 用stub进行粗粒度测试
7.1 stub简介
7.2 用stub测试一个HTTP连接
7.2.1 选择stub的使用方案
7.2.2 用Jetty充当嵌入式服务器
7.3 用stub替换服务器资源
7.3.1 构建第一个stub测试
7.3.2 回顾第一个stub测试
7.4 替换连接
……
第三部分 运用JUnit 5及其他工具
第四部分 使用现代框架和JUnit 5
第五部分 永JUnit 5开发应用程序
附录A Maven
附录B Gradle
附录C IDE
附录D Jenkins
同类热销排行榜
- C语言与程序设计教程(高等学校计算机类十二五规划教材)16
- 电机与拖动基础(教育部高等学校自动化专业教学指导分委员会规划工程应用型自动化专业系列教材)13.48
- 传感器与检测技术(第2版高职高专电子信息类系列教材)13.6
- ASP.NET项目开发实战(高职高专计算机项目任务驱动模式教材)15.2
- Access数据库实用教程(第2版十二五职业教育国家规划教材)14.72
- 信号与系统(第3版下普通高等教育九五国家级重点教材)15.08
- 电气控制与PLC(普通高等教育十二五电气信息类规划教材)17.2
- 数字电子技术基础(第2版)17.36
- VB程序设计及应用(第3版十二五职业教育国家规划教材)14.32
- Java Web从入门到精通(附光盘)/软件开发视频大讲堂27.92
推荐书目
-
孩子你慢慢来/人生三书 华人世界率性犀利的一枝笔,龙应台独家授权《孩子你慢慢来》20周年经典新版。她的《...
-
时间简史(插图版) 相对论、黑洞、弯曲空间……这些词给我们的感觉是艰深、晦涩、难以理解而且与我们的...
-
本质(精) 改革开放40年,恰如一部四部曲的年代大戏。技术突变、产品迭代、产业升级、资本对接...