编程语言
首页 > 编程语言> > java – 测试Spring MVC控制器的@MessageMapping WebSocket方法

java – 测试Spring MVC控制器的@MessageMapping WebSocket方法

作者:互联网

我正在尝试对Spring 4.0中添加的WebSockets的支持,如this guide所述.如指南所示,使用@MessageMapping注释的方法可以添加到任何Spring MVC控制器,它也可能包含@RequestMapping方法.

spring-test模块支持以非常简单和流畅的方式编写@RequestMapping方法的集成测试(如here所述):

@Test
public void getAccount() throws Exception {
    this.mockMvc.perform(get("/accounts/1").accept(MediaType.parseMediaType("application/json;charset=UTF-8")))
        .andExpect(status().isOk())
        .andExpect(content().contentType("application/json"))
        .andExpect(jsonPath("$.name").value("Lee"));
}

是否有类似的支持使用WebSockets测试@MessageMapping方法?我没有在任何Spring模块中找到任何内容,也没有任何WebSocket指南包含任何测试.如果没有,我是否需要实际部署应用程序并使用WebSocketConnectionManager连接测试客户端?或者我是否可以通过弹簧测试构建一些API?

This sample project包含这样一个小型测试客户端,但我更愿意将其集成到实际测试中,而不需要我部署应用程序并在测试中对已部署的路径进行硬编码.

解决方法:

对于@MessageMapping方法,没有像Spring MVC Test那样的东西.但是,即使没有流畅的API,也应该采用类似的测试方法. JIRA(见https://jira.spring.io/browse/SPR-11266)有一张机票可以提供文件,因此在不久的将来可以查看机票了解更多细节.

标签:java,spring,spring-mvc,spring-test
来源: https://codeday.me/bug/20190831/1773720.html