【发布时间】:2014-11-14 10:35:20
【问题描述】:
我正在尝试使用 JUnit 和 Mockito 针对我正在构建的 Spring REST Web 服务运行测试。我在尝试运行 JUnit 测试时遇到了一个错误,但找不到有关该问题的任何信息。堆栈跟踪将错误行列为.andDo(print()),尽管我直接从spring.io 教程http://spring.io/guides/tutorials/rest/3/ 获得了该行@
测试类代码:
public class TestSuite {
MockMvc mockMvc;
@Mock
RestController controller;
@Before
public void setup(){
MockitoAnnotations.initMocks(this);
this.mockMvc = standaloneSetup(controller)
.setMessageConverters(new MappingJackson2HttpMessageConverter()).build();
}
@Test
public void testREST() throws Exception {
when(controller.getThing(any(Integer.class))).thenReturn(TestFixture.getREST(1));
this.mockMvc.perform(get("/{number}", String.valueOf(number))
.accept(MediaType.APPLICATION_JSON))
.andDo(print())
.andExpect(status().isNotFound());
}}
堆栈跟踪:
java.lang.NoSuchMethodError: javax.servlet.http.HttpServletRequest.isAsyncStarted()Z
at org.springframework.test.web.servlet.result.PrintingResultHandler.printAsyncResult(PrintingResultHandler.java:131)
at org.springframework.test.web.servlet.result.PrintingResultHandler.handle(PrintingResultHandler.java:80)
at org.springframework.test.web.servlet.MockMvc$1.andDo(MockMvc.java:155)
at org.company.test.TestSuite.testREST(TestSuite.java:53)`
【问题讨论】:
-
可能solution
标签: java spring junit mockito spring-test