直接上测试代码
@RunWith(SpringRunner.class)
@SpringBootTest
public class Test22222 {
@Test
public void testGetBondInterestByOfDiscount() {
System.out.println("bondInterest");
}
}
报错日志:
Error creating bean with name 'createWebSocketContainer' defined in class path resource [com/croot/websocket/WebSocketConfig.class]: Invocation of init method failed; nested exception is java.lang.IllegalStateException: Attribute 'javax.websocket.server.ServerContainer' not found in ServletContext
解决方案:注解上加上@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
@RunWith(SpringRunner.class)
@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
public class Test22222 {
@Test
public void testGetBondInterestByOfDiscount() {
System.out.println("bondInterest");
}
}
报错原因:
因为WebSocket是servlet容器所支持的,所以需要加载servlet容器,webEnvironment参数为springboot指定ApplicationContext类型。webEnvironment = SpringBootTest.WebEnvironment.DEFINED_PORT表示内嵌的服务器将会在一个随机的端口启动。