小工具知识网

当前位置: 首页 > 行业知识 > 若依SpringBoot添加单元测试类及测试类启动报错

行业知识

若依SpringBoot添加单元测试类及测试类启动报错

2026-10-19 10:59:17 来源:互联网转载

若依SpringBoot添加单元测试类及测试类启动报错

  • 一、添加测试类的依赖
  • 二、编写测试类
  • 三、Spring Boot ��入websocket后,单元测试启动报错(javax.websocket.server.ServerContainer not available)

    一、添加测试类的依赖

    在admin 模块中添加单元测试

    ()

    将以下依赖添加到 admin 的 pom.xml 中

                                junit            junit            test                                    org.springframework.boot            spring-boot-test            test                                    org.springframework            spring-test            test        

    二、编写测试类

    在 src 目录下创建 test.java.MainTests 文件

    ()
    import com.ruoyi.RuoYiApplication;import com.ruoyi.activity.domain.Activity;import com.ruoyi.activity.mapper.ActivityMapper;import org.junit.Test;import org.junit.runner.RunWith;import org.mybatis.spring.annotation.MapperScan;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.boot.test.context.SpringBootTest;import org.springframework.test.context.junit4.SpringRunner;import java.util.List;@RunWith(SpringRunner.class)@SpringBootTest(classes = RuoYiApplication.class)public class MainTests {    @Autowired    private ActivityMapper activityMapper;    @Test    public void testSelectActivityById() {        Activity activity = activityMapper.selectActivityById(1);        System.out.println(activity);    }    @Test    public void testSelectActivityList() {        List activityList = activityMapper.selectActivityList(new Activity());        System.out.println(activityList);    }    }

    三、Spring Boot 加入websocket后,单元测试启动报错(javax.websocket.server.ServerContainer not available)

    错误提示:

    java.lang.IllegalStateException: Failed to load ApplicationContext

    Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘serverEndpointExporter’ defined in class path resource [com/zou/sell/config/WebSocketConfig.class]: Invocation of init method failed; nested exception is java.lang.IllegalStateException: javax.websocket.server.ServerContainer not available

    解决方案:

    在springbootTest注解加入 webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT,我们在测试使用 websocket的时候需要启动一个完整的服务器,而使用这个注解就是说每次测试都会选用一个随即可用的端口模拟启动一个完整的服务器

    @SpringBootTest(classes = RuoYiApplication.class,webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)

上一篇:服务器防御值怎么算?

下一篇:独家揭秘,轻松开启MIUI12谷歌服务指南!