【异常】IDEA中执行单元测试后提示IllegalStateException: javax.websocket.server.ServerContainer not available

这篇具有很好参考价值的文章主要介绍了【异常】IDEA中执行单元测试后提示IllegalStateException: javax.websocket.server.ServerContainer not available。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、报错内容

在SpringBoot项目中集成了WebSocket,在进行单元测试的时候,出现了以下错误:

Caused by: java.lang.IllegalStateException: javax.websocket.server.ServerContainer not available
	at org.springframework.util.Assert.state(Assert.java:76)
	at org.springframework.web.socket.server.standard.ServerEndpointExporter.afterPropertiesSet(ServerEndpointExporter.java:107)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1847)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1784)

二、报错说明

代码中使用了POM文件spring-boot-starter-websocket,用于统计实时人数

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-websocket</artifactId>
    <version>1.5.10.RELEASE</version>
</dependency>

单元测试类的原注解是这样的:

@RunWith(SpringRunner.class)
@SpringBootTest

经查阅资料,得知SpringBootTest在启动的时候不会启动服务器,所以WebSocket自然会报错

三、报错解决

这个时候需要添加选项webEnvironment,以便提供一个测试的web环境。
如下:文章来源地址https://www.toymoban.com/news/detail-764225.html

@RunWith(SpringRunner.class)
@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
public class FeishuUtilTest {
    @Autowired
    private FeiShuService feiShuService;
    @Autowired
    private UserMapper userMapper;

到了这里,关于【异常】IDEA中执行单元测试后提示IllegalStateException: javax.websocket.server.ServerContainer not available的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • java.lang.IllegalStateException: Failed to load ApplicationContext 在测试方法执行中出现【解决办法】

    报错信息如下: 在SpringBoot项目中遇到报错信息,除了Error那一行的错误信息之外,也要看Caused by后面的报错的原因!!! 本报错信息中的 Cause by:BeanDefinitionStoreException: Failed to parse configuration class [com.sl.pay.PayApplication]; nested exception is org.springframework.context.annotation.ConflictingB

    2024年04月12日
    浏览(35)
  • 解决升级IDEA后,Jrebel激活失败,更换激活地址时提示必须切换到离线模式,但点击work offline报错IllegalStateException

    今天升级IDEA到2022版本,升级完发现Jrebel激活失效了,提示错误: Failed to obtain seat. LS client not configured. http://jrebel.cicoding.cn/44AB3E1A-D547-9AFB-13A1-3FF4C7EF0740 想重新激活时提示错误: Cannot reactivate, offline seat in use. Click Work online in JRebel configuration to return offline seat.  遂到配置页面,

    2024年02月15日
    浏览(48)
  • SpringBoot单元测试java.lang.IllegalStateException Could not initialize plugin: interface org.mockito解决方案

      大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作

    2024年02月04日
    浏览(29)
  • Mockito单元测试异常情况

    一、空指针异常 例子: 使用Collectors.groupingBy()进行分组时, 分组值存在null值 。 解决办法:分组值为null时,默认值为空字符,或者让数据不为空。 二、多个参数匹配异常 例如: 如果a和b一个是正常传参(list、map、string…)另一个是任意万能传参(any()、anyList()、anyString(

    2024年02月07日
    浏览(38)
  • SpringBoot异常处理和单元测试

    SpringBoot默认的处理异常的机制:SpringBoot 默认的已经提供了一套处理异常的机制。一旦程序中出现了异常 SpringBoot 会向/error 的 url 发送请求。在 springBoot 中提供了一个叫 BasicErrorController 来处理/error 请求,然后跳转到默认显示异常的页面来展示异常信息 如 果我 们 需 要 将 所

    2024年01月18日
    浏览(38)
  • adb 命令行执行单元测试

    可参考教程:Mac配置ADB环境变量 adb在我们配置 Android Studio 时 安装的 AndroidSDK 的 platformTools 目录中,所以我们首先要找到 adb 所在目录,就在sdk目录下面。在Project Structure中,找到SDK安装路径. ADB的目录就在 上面目录的 platform-tools中 直接终端编辑 bash_profile 文件,配置环境变量

    2024年02月14日
    浏览(34)
  • Spring Boot异常处理和单元测试

    SpringBoot默认的处理异常的机制:SpringBoot 默认的已经提供了一套处理异常的机制。一旦程序中出现了异常 SpringBoot 会向/error 的 url 发送请求。在 springBoot 中提供了一个叫 BasicErrorController 来处理/error 请求,然后跳转到默认显示异常的页面来展示异常信息 如 果我 们 需 要 将 所

    2024年03月17日
    浏览(30)
  • Junit 单元测试之错误和异常处理

    错误和异常处理是测试中非常重要的部分。假设我们有一个服务,该服务从数据库中获取用户。现在,我们要考虑的错误场景是:数据库连接断开。 首先,为了简化,我们让服务层就是简单的类,然后使用Id查找用户,这个和之前测试UserService接口不太一样哦: 现在,我们要

    2024年02月08日
    浏览(28)
  • Spring Boot异常处理及单元测试

    SpringBoot默认的处理异常的机制:SpringBoot 默认的已经提供了一套处理异常的机制。一旦程序中出现了异常 SpringBoot 会向/error 的 url 发送请求。在 springBoot 中提供了一个叫 BasicErrorController 来处理/error 请求,然后跳转到默认显示异常的页面来展示异常信息 如 果我 们 需 要 将 所

    2024年01月19日
    浏览(37)
  • gradle 命令行单元测试执行问题

    命令行 执行测试命令 无法使用(之前还能用的。没有任何改动,又不能用了) ./gradlew app:connectedAndroidTest -Pandroid.testInstrumentationRunnerArguments.class=com.didi.testcase.basemap.A 出现下面报错,,搜索异常解决信息提示java版本过低?但是Java版本一换项目就跑不起来了。。 错误提示信息

    2024年02月13日
    浏览(21)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包