单元测试
xiegwei
这个作者很懒,什么都没留下…
展开
-
Spring Cloud gateway 单元测试,模拟http请求,并mock
Spring Cloud gateway使用的是reactive,使用WebTestClient模拟发送请求。@SpringBootTest(webEnvironment = RANDOM_PORT)public class GatewayTests { protected static WebTestClient webClient; @LocalServerPort protected int port = 0; @BeforeEach public原创 2020-11-05 20:54:10 · 3752 阅读 · 1 评论 -
Spring 单元测试中使用@Sql准备数据
在写单元测试时,往往需要在数据库中准备对应的测试数据。我们可以在测试用例中,通过代码的方式往数据库中插入数据。但这么做会使测试代码比较臃肿。个人觉得,通过sql脚本去导入数据,再结合@Transactional注解对数据进行回滚,是一种更好的方案。为此,spring为我们准备了很有用的注解@Sql。@Sql@Sql注解可以执行SQL脚本,也可以执行SQL语句。它既可以加上类上面,也可以加在方法上面。默认情况下,方法上的@Sql注解会覆盖类上的@Sql注解,但可以通过@SqlMergeMode注解原创 2020-09-22 14:54:48 · 6492 阅读 · 0 评论 -
mybatis-plus巨坑--死锁
mybatis-plus版本:3.3~3.4我们的项目在多线程执行单元测试的情况下,会出现死锁的情况,每次都会卡在update语句上,并报以下错误:Cause: com.mysql.cj.jdbc.exceptions.MySQLTransactionRollbackException: Lock wait timeout exceeded; try restarting transaction at org.apache.ibatis.exceptions.ExceptionFactory...原创 2020-08-26 17:05:36 · 5721 阅读 · 2 评论 -
Spring Boot多环境单元测试@ActiveProfiles例子
@ActiveProfiles是一个类注解,在Spring单元测试加载ApplicationContext时指定profiles。@ActiveProfiles有以下参数:profiles: 指定配置文件resolver: 指定ActiveProfilesResolver,通过代码指定配置文件value: profiles的别名inheritProfiles: 配置文件是否继承父类,默认为true@ActiveProfiles 在单元测试中使用的例子:@ExtendWith(SpringExt原创 2020-08-24 14:13:30 · 12395 阅读 · 0 评论