作品简介

本书包含四大部分,共10章。一部分(1~4章)主要围绕如何提高软件的开发质量和效率展开,详细讲述了单元测试的常用工具和实践方法,并展开阐述了持续集成、持续交付、持续部署等概念;二部分(5~6章)详细讲解了两个常用的mock工具——Mockito和Powermock,通过实例详尽地讲解了它们的语法规则和使用场景,目的是让开发者在不修改软件源代码和程序结构的前提下尽可能确保软件具备可测试性;三部分(7~8章)为读者详细讲述了两个行为驱动开发工具(功能测试)Concordion和Cucumber的使用,这两个工具可以帮助我们很好地完成功能测试、验收测试、回归测试等工作;四部分(9~10章)综合前面三部分的知识点,并引入代码风格检查、静态代码分析、三方依赖安全性检查、企业内部私服的原理和搭建、Ansible自动化软件部署工具、Jenkins Pipeline等知识,以帮助读者构建了一个完整的CI/CD流程。

本书作者心蓝。

作品目录

  • 前言
  • 第一部分 提高软件的开发质量及开发效率
  • 第1章 单元测试与TDD
  • 1.1 单元测试的定义
  • 1.2 单元测试的好处
  • 1.3 单元测试的FIRST原则
  • 1.4 JUnit最佳实践
  • 1.5 测试驱动开发
  • 1.6 本章总结
  • 第2章 Hamcrest:优雅强大的对象匹配器
  • 2.1 Hamcrest概述
  • 2.2 Hamcrest对象匹配器详解
  • 2.3 自定义对象匹配器
  • 2.4 REST-Assured的使用
  • 2.5 本章总结
  • 第3章 Git及Git工作流程
  • 3.1 快速上手Git
  • 3.2 文件状态生命周期及Git中的对象
  • 3.3 Git与本地仓库
  • 3.4 Git与远程仓库
  • 3.5 Git的配置和别名操作
  • 3.6 Git工作流程
  • 3.7 本章总结
  • 第4章 持续集成与持续交付
  • 4.1 什么是持续集成
  • 4.2 什么是持续交付
  • 4.3 什么是持续部署
  • 4.4 本章总结
  • 第二部分 mock:构造测试对象的替身
  • 第5章 Mockito:热门的mock工具
  • 5.1 mock技术
  • 5.2 快速上手Mockito
  • 5.3 创建mock“替身”对象实例
  • 5.4 Stubbing语法详解
  • 5.5 Spying详解
  • 5.6 Argument对象匹配器详解
  • 5.7 Mockito Verify与Arguments Captor
  • 5.8 InjectMocks
  • 5.9 Mockito对BDD风格的支持
  • 5.10 Mockito Inline
  • 5.11 本章总结
  • 第6章 Powermock详解
  • 6.1 快速入门Powermock
  • 6.2 Powermock如何通过mock操作局部变量
  • 6.3 Powermock如何通过mock操作静态方法
  • 6.4 Powermock如何通过mock操作final修饰的类
  • 6.5 Powermock如何通过mock操作私有方法
  • 6.6 Powermock中的Spying
  • 6.7 Powermock与JaCoCo
  • 6.8 本章总结
  • 第三部分 行为驱动开发
  • 第7章 Concordion:测试即文档
  • 7.1 Concordion的开发流程
  • 7.2 搭建Concordion环境
  • 7.3 Concordion的指令详解
  • 7.4 在Specification文档中处理Java返回的结果
  • 7.5 table和list中的指令
  • 7.6 拾遗补漏
  • 7.7 本章总结
  • 第8章 Cucumber:热门的行为驱动开发工具
  • 8.1 Cucumber简介
  • 8.2 Feature文档的语法基础:Gherkin
  • 8.3 Step Definitions详解
  • 8.4 Cucumber进阶
  • 8.5 CucumberOptions
  • 8.6 Cucumber整合Selenium进行Web自动化测试
  • 8.7 Cucumber功能测试报告
  • 8.8 本章总结
  • 第四部分 遇见Jenkins
  • 第9章 Jenkins的基础知识
  • 9.1 Jenkins的安装及快速构建Job
  • 9.2 配置Jenkins
  • 9.3 Jenkins参数化及可视化构建
  • 9.4 Jenkins构建Pipeline Job
  • 9.5 本章总结
  • 第10章 基于Jenkins构建持续集成与持续交付
  • 10.1 Spring Boot开发RESTful应用
  • 10.2 Nexus私服
  • 10.3 RedHat Ansible
  • 10.4 创建Jenkins Pipeline
  • 10.5 本章总结
展开全部