技术教育社区
www.teccses.org

Spring Boot开发与测试实战

封面

作者:李泳

页数:300

出版社:人民邮电出版社

出版日期:2022

ISBN:9787115597335

电子书格式:pdf/epub/txt

内容简介

本书首先介绍Spring、Spring Boot、Spring MVC和Spring Security等技术,然后以一个简易的在线书店管理系统为例,全面讲解采用JPA/MyBatis、MySQL、Thymeleaf与Bootstrap技术栈开发应用程序的过程。开发过程中引入菱形测试模型,覆盖单元测试、接口测试、功能测试和探索测试等方法,并开展关键字驱动测试和数据驱动测试。本书基于分层测试框架,结合实践案例说明如何实施测试,有助于项目研发人员提高测试效率和产品成熟度。
本书不仅适合测试人员、开发人员阅读,还可作为相关培训机构的教材。

作者简介

李泳 ,担任过质量测试总监、测试总监、开发工程师,拥有丰富的C/C++/Java经验,熟悉Spring Boot、SpingMVC等企业程序架构,拥有10年以上软件平台和硬件测试经验,开发过基于Linux 的GUI中间件和控件。

本书特色

1.结合案例,系统讲述Spring Boot框架基础知识、应用程序开发过程和菱形测试模型,帮助读者提升全栈开发与测试能力2.通俗易懂,本书是一本关于Spring Boot应用程序开发和测试的入门图书,适合初学者学习3.内容实用,通过学习如何用代码实现具体的接口,读者可掌握开发框架和测试分层模型的应用4.可操作性强,从搭建环境入手,详细介绍如何编写代码和测试脚本,并结合源代码实现测试过程,帮助读者一步步了解整个测试过程,读者可跟随本书中的案例进行实践

目录

目 录

第 1章 Spring Boot 1

1.1 Spring框架的优势 1

1.2 Spring基本概念 2

1.3 Spring核心模块 4

1.4 企业级应用程序开发的痛点 6

1.5 Spring Boot的优势 6

1.6 Spring Boot核心组件 7

1.7 Spring Boot程序创建方法 9

1.8 小结 9

第 2章 Spring MVC 10

2.1 典型的Java Web应用程序架构 10

2.2 创建一个Spring MVC程序 10

2.2.1 Java配置方式 10

2.2.2 XML配置方式 14

2.3 Spring MVC运行过程 16

2.4 小结 18

第3章 Spring Boot程序 19

3.1 创建一个“Hello World”程序 19

3.2 创建一个可执行的JAR包 24

3.3 Spring Boot运行入口类 27

3.4 Spring Boot注解简介 28

3.5 小结 30

第4章 JPA和MyBatis 31

4.1 JPA简介 31

4.2 Spring Data JPA简介 32

4.2.1 常用注解 33

4.2.2 常用接口 33

4.3 Spring Data JPA集成实例 33

4.4 MyBatis实例 41

4.4.1 注解方式 41

4.4.2 使用Mapper XML 45

4.5 小结 47

第5章 Bootstrap 48

5.1 Bootstrap简介 48

5.2 Bootstrap的组成、安装和使用 48

5.3 Bootstrap网格 50

5.4 Bootstrap实例 51

5.5 小结 56

第6章 Thymeleaf 57

6.1 Thymeleaf标准表达式 57

6.2 使用Thymeleaf处理用户输入 59

6.3 Thymeleaf中的迭代器与条件判断 59

6.3.1 迭代器 59

6.3.2 条件判断 60

6.4 Thymeleaf模板片段 60

6.5 Thymeleaf实用方法 60

6.6 Thymeleaf实例 61

6.7 小结 73

第7章 Spring Security 74

7.1 Spring Security概述 74

7.2 HTTP基本身份验证 75

7.3 Spring Security实例 76

7.4 小结 83

第8章 Spring Boot测试框架集成 84

8.1 Spring测试框架简介 84

8.1.1 单元测试支持类 84

8.1.2 集成测试支持类 85

8.1.3 常用的测试注解 86

8.1.4 典型的Spring JUnit测试脚本 87

8.1.5 Spring MVC测试特性 87

8.2 Spring Boot测试特性 88

8.2.1 典型的测试脚本 89

8.2.2 使用@WebMvcTest注解进行单元测试 89

8.2.3 用于集成测试的TestRestTemplate 91

8.3 使用Mockito来模拟对象 92

8.4 小结 93

第9章 在线书店管理系统需求 95

9.1 业务需求调研 95

9.2 功能需求分析 96

9.2.1 用户活动分析 96

9.2.2 系统模块分析 96

9.2.3 业务数据分析 96

9.3 非功能需求分析 97

9.4 需求原型设计 97

9.4.1 业务导航图 97

9.4.2 页面原型设计 98

9.5 技术选型 98

9.6 系统架构设计 99

9.7 前端页面设计 100

9.8 系统运行环境的搭建 100

9.8.1 JDK的安装 100

9.8.2 Maven的安装 101

9.8.3 MySQL的安装 101

9.9 小结 102

第 10章 案例项目的创建 103

10.1 数据表设计 103

10.1.1 数据表结构设计 104

10.1.2 数据表关系图 105

10.1.3 创建数据表脚本 105

10.1.4 创建数据库和表 107

10.2 生成项目 108

10.3 pom.xml文件 109

10.4 配置文件 111

10.5 小结 111

第 11章 用户管理模块设计及实现 112

11.1 用户管理需求 112

11.2 接口需求分析 113

11.3 后端设计及编码 114

11.3.1 用户域模型设计 114

11.3.2 用户仓库实现 117

11.3.3 用户服务接口实现 117

11.3.4 用户控制层实现 119

11.4 前端设计及编码 122

11.4.1 用户注册 122

11.4.2 用户登录 124

11.4.3 用户个人信息修改 125

11.4.4 用户管理 127

11.4.5 创建用户 129

11.4.6 删除用户 131

11.5 小结 132

第 12章 角色权限设计及实现 133

12.1 分析角色需求、权限需求与接口需求 133

12.1.1 角色功能需求分析 133

12.1.2 权限需求分析 133

12.1.3 接口需求分析 134

12.2 后端设计及编码 134

12.2.1 初始化角色权限数据 134

12.2.2 角色域模型设计 134

12.2.3 权限安全配置 135

12.2.4 用户身份认证服务实现 136

12.2.5 权限控制层实现 137

12.3 前端设计及编码 137

12.4 小结 139

第 13章 图书管理模块设计及编码实现 140

13.1 图书管理需求 140

13.1.1 图书搜索 140

13.1.2 图书管理 140

13.2 接口需求分析 141

13.3 后端设计及编码 141

13.3.1 图书域模型设计 141

13.3.2 图书仓库实现 143

13.3.3 图书服务接口实现 144

13.3.4 图书控制层实现 145

13.4 前端设计及编码 147

13.4.1 图书管理 148

13.4.2 新增图书 149

13.4.3 图书编辑 151

13.4.4 图书搜索 153

13.4.5 图书详情 154

13.5 小结 155

第 14章 订单管理模块设计及编码实现 156

14.1 订单管理需求 156

14.1.1 生成订单 156

14.1.2 订单管理 156

14.2 接口需求分析 157

14.3 后端设计及编码 158

14.3.1 订单域模型设计 158

14.3.2 订单仓库实现 161

14.3.3 订单服务接口实现 161

14.3.4 订单控制层实现 163

14.4 前端设计及编码 165

14.4.1 加入购物车 165

14.4.2 订单确认 167

14.4.3 个人历史订单 168

14.4.4 订单管理 169

14.4.5 订单处理 170

14.4.6 订单详情 171

14.5 程序打包构建 172

14.6 小结 173

第 15章 RESTful API的设计与实现 174

15.1 RESTful API简介 174

15.1.1 API设计准则 174

15.1.2 REST实现和Spring常用

注解 175

15.2 Swagger简介 177

15.3 RESTful API实现 179

15.3.1 用户接口设计 179

15.3.2 用户接口实现 181

15.4 启动Swagger查阅API 182

15.4.1 生成API文档 182

15.4.2 新建用户信息 182

15.4.3 查询用户信息 183

15.4.4 更新用户信息 183

15.4.5 删除用户信息 184

15.4.6 接口测试验证 185

15.5 小结 186

第 16章 分层测试框架 187

16.1 测试需求 187

16.2 测试策略 188

16.3 测试金字塔 188

16.3.1 单元测试 189

16.3.2 接口测试 190

16.3.3 UI测试 191

16.3.4 探索测试 191

16.4 菱形测试模型 191

16.4.1 轻量级单元测试 192

16.4.2 重量级接口测试 194

16.4.3 UI测试 196

16.5 测试模型及其使用场景 197

16.5.1 金字塔测试模型 197

16.5.2 冰激凌测试模型 198

16.5.3 菱形测试模型 198

16.5.4 改进的菱形测试模型 199

16.6 自动化测试实施策略 200

16.7 小结 201

第 17章 测试工具选型 202

17.1 自动化测试原理 202

17.2 测试工具选型原则 203

17.3 单元测试工具 204

17.3.1 JUnit 204

17.3.2 TestNG 209

17.3.3 Mockito 216

17.4 接口测试工具 217

17.4.1 Postman 217

17.4.2 JMeter 217

17.4.3 REST Assured 218

17.4.4 OkHttp 219

17.4.5 HttpClient 219

17.5 功能测试工具Selenium 219

17.6 小结 220

第 18章 单元测试脚本开发 221

18.1 测试定义回顾 221

18.2 单元测试设计原则 222

18.3 单元测试策略 223

18.4 集成测试策略 223

18.5 测试代码目录结构 224

18.6 DAO层测试脚本开发 225

18.7 Service层测试脚本开发 226

18.7.1 Service层单元测试 226

18.7.2 Service层集成测试 228

18.8 Controller层测试脚本开发 229

18.8.1 Controller层单元测试 230

18.8.2 Controller层集成测试 233

18.9 小结 236

第 19章 接口测试脚本开发 237

19.1 接口测试的方法及环境 237

19.1.1 接口测试方法 237

19.1.2 接口测试环境 238

19.2 Postman 239

19.2.1 Postman的安装 240

19.2.2 使用Postman进行接口测试 240

19.3 JMeter 244

19.3.1 JMeter的安装 244

19.3.2 使用JMeter进行接口测试 244

19.4 REST Assured 251

19.4.1 REST Assured的使用 251

19.4.2 使用REST Assured进行接口测试 254

19.5 OkHttp 258

19.5.1 OkHttp的使用 258

19.5.2 使用OkHttp进行接口测试 259

19.5.3 异步调用 261

19.6 HttpClient 261

19.6.1 HttpClient的使用 261

19.6.2 使用HttpClient进行接口测试 262

19.7 小结 264

第 20章 功能测试脚本开发 265

20.1 功能测试场景 265

20.1.1 测试环境 265

20.1.2 测试场景 265

20.2 基于JMeter的后端功能测试 266

20.3 基于Selenium的前端功能测试 272

20.3.1 元素定位 272

20.3.2 WebDriver常用函数 273

20.3.3 Selenium测试脚本开发 273

20.3.4 Page Object测试模式 277

20.4 数据驱动测试 280

20.5 关键字驱动测试 287

20.6 小结 293

第 21章 探索测试 294

21.1 探索测试的定义 294

21.2 探索测试的优势和不足 295

21.3 探索测试的方法 295

21.4 探索测试实践 297

21.5 小结 299

附录A 案例的架构和测试框架 300

下载地址

立即下载

(解压密码:www.teccses.org)

Article Title:《Spring Boot开发与测试实战》
Article link:https://www.teccses.org/1413541.html