springboot开发实用篇(二)

目录

三.测试

3.1 加载测试专用属性

3.2 加载测试专用参数

3.3 加载测试专用配置

3.4 测试类中web环境模拟测试

3.4.1 虚拟请求状态匹配

3.4.2 虚拟请求响应体匹配

3.4.3 虚拟请求响应体(json)匹配

3.4.4 虚拟请求响应头匹配

3.5 业务层测试事务回滚

3.6 在测试类中使用随机数据测试

三.测试

3.1 加载测试专用属性

在启动测试环境时可以通过 properties 参数设置测试环境专用的属性,测试专用属性可以覆盖application.yml中配置的属性,且仅对当前测试类有效。
springboot开发实用篇(二)_第1张图片

3.2 加载测试专用参数

除了使用properties参数设置测试环境专用的属性,也可以在启动测试环境时通过args参数设置测试环境专用的传入参数,二者产生的效果差不多。

springboot开发实用篇(二)_第2张图片

3.3 加载测试专用配置

第一步:创建配置类,在类中定义一个第三方bean

springboot开发实用篇(二)_第3张图片

第二步:使用@Import注解加载当前测试类专用的配置

springboot开发实用篇(二)_第4张图片

3.4 测试类中web环境模拟测试

第一步:测试类中启动web环境

在测试类中,在注解@SpringBoot中添加WebEnvironment参数也可以单独启动一个web服务器,WebEnvironment参数取不同的值,则会以不同的方式得到一个端口号启动。

springboot开发实用篇(二)_第5张图片

第二步:发送虚拟请求

首先,需要在测试类上方通过@AutoConfigureMockMvc注解开启虚拟MVC调用

其次,需要在类中注入虚拟MVC调用对象

最后,创建一个虚拟请求,并执行这个虚拟请求

springboot开发实用篇(二)_第6张图片

3.4.1 虚拟请求状态匹配

通过一些API定义一个预期状态码,再与实际得到的状态码进行比对,查看是否一致

springboot开发实用篇(二)_第7张图片

3.4.2 虚拟请求响应体匹配

通过一些API定义一个预期内容,再与实际请求得到的内容进行比对,查看是否一致

springboot开发实用篇(二)_第8张图片

3.4.3 虚拟请求响应体(json匹配

通过一些API定义一个预期JSON数据,再与实际请求得到的JSON数据进行比对,查看是否一致springboot开发实用篇(二)_第9张图片

3.4.4 虚拟请求响应头匹配

通过一些API定义一个预期响应头,再与请求得到的响应头进行比对,查看是否一致

springboot开发实用篇(二)_第10张图片

3.5 业务层测试事务回滚

在测试类上方加上注解@Transaction,即可让测试类中的方法执行完之后进行回滚

springboot开发实用篇(二)_第11张图片

 如果想在测试用例中提交事务,可以通过@Rollback注解设置(等同于这二个注解都不加)

springboot开发实用篇(二)_第12张图片

3.6 在测试类中使用随机数据测试

测试用例数据通常采用随机值进行测试,使用 SpringBoot 提供的随机数为其赋值

第一步:在application.yml配置文件中定义随机值数据

springboot开发实用篇(二)_第13张图片

第二步:创建一个bean,把配置文件中的数据注入到bean中

springboot开发实用篇(二)_第14张图片 第三步:在测试类中使用随机值数据

 

你可能感兴趣的:(springboot,spring,boot,后端,java,单元测试)