spring boot 2.0入门之spring boot 2.0 Junit单元测试多线程问题解决

位置:首页>文章>详情   分类: 教程分享 > Java教程   阅读(2417)   2023-03-28 11:29:14

问题描述

测试的业务将部分数据添加入一个公开队列中,有另外一个业务类进行多线程轮训等待处理。业务场景中涉及到了多线程异步任务。当使用spring boot 2.0自带的Junit整合测试业务时候,端点等待子线程无效。子线程会随主线程断点而断点执行。简单的说就是你在测试的业务中添加断点来等待子线程(异步多线程业务处理)时候,你会发现主线断点走一步,子线程也就动一下。从而子线程的异步任务无法得到正确的测试结果。主线程结束子线程就算任务没完成也会被强制结束。
 

问题解决

由于Junit的运行机制,目前临时的解决方式是在写的单元测试方法中调用测试的业务方法后面添加线程睡眠,也就是Thread.sleep(time);睡眠的时间根据子线程处理业务的速度估计个2倍。
地址:https://www.leftso.com/article/455.html

相关阅读

spring boot 2.0 入门之单元测试多线程。spring boot 2.0 项目含多线程异步处理业务单元测试执行主线程结束不等待子线程结束。
Spring Boot 2.0 Redis整合,通过spring boot 2.0整合Redis作为spring缓存框架的实现。
spring boot 2.0 security 5.0 整合,实现自定义表单登录。spring boot 2.0框架使用。
Spring Boot 2.0,Spring框架的Spring Boot 中的Spring Boot Actuator变化讲解。并且了解如何在Spring Boot 2.0中使用Actuator...
Spring Boot 2.0 有哪些新特性_Spring Boot 2.0新功能,在本文中,我们将探讨为Spring Boot 2.0计划的一些更改和功能。我们还会描述这些变化如何帮助我们提高...
spring boot入门,spring boot是一个崭新的spring框架分支项目,本文讲解其属性配置相关
spring boot又一个spring框架的经典项目,本文讲解spring boot入门的环境配置以及第一个项目,Spring Boot 入门教程
Spring Boot 1.x升级到Spring Boot 2.0迁移指南
Spring Boot 2.0 绑定properties属性资源文件 Spring Boot 2.0 读取properties配置文件值 Spring Boot 2.0获取properties配...
Spring Boot 入门 AOP 日志处理,这里主要讲解spring boot 中采用AOP方式进行日志的统一处理。spring 框架的处理也是一样。综合来讲,本文主要讲解了spring b...