java. Lang. assertionerror: expected status: 200 actual: 404
•
Java
I received this error message:
java.lang.AssertionError: Status Expected :200 Actual :404
My controller is like this
@Service @RestController @RequestMapping("/execute/files") @ResponseBody public class ControllerFiles { @Autowired @Qualifier("fileRunner") ProcessRunnerInterface processRunnerInterfaceFiles; public InputState executeRestFile(@RequestParam String name) throws ExecutionFailedException,URISyntaxException { ///code/// } public List<String>....{ ///code/// } }
My test
@RunWith(SpringJUnit4ClassRunner.class) @SpringBootTest @AutoConfiguremockmvc public class ControllerFilesTest { @Autowired private mockmvc mockmvc; @Autowired ControllerFiles controllerFiles; @Test public void testSpringMvcGetFiles() throws Exception { this.mockmvc.perform(get("/execute/files").param("name","Spring Community Files")) .andDo(print()).andExpect(status().isOk()); } }
But when I have such code, the test works normally!
@Service @RestController public class ControllerFiles { @Autowired @Qualifier("fileRunner") ProcessRunnerInterface processRunnerInterfaceFiles; @RequestMapping("/execute/files") @ResponseBody public InputState executeRestFile(@RequestParam String name) throws ExecutionFailedException,URISyntaxException { ///code/// } public List<String>....{ ///code/// } }
What's wrong?
Solution
If you want to get them as request resources, you need to mark the method in restcontroller as @ requestmapping If you want to keep the basic request mapping at the controller level as in the first restcontroller, you need to do the following:
@RestController @RequestMapping("my/path") public class MyController { @RequestMapping("/") public InputState myMethod() { ... } }
The content of this article comes from the network collection of netizens. It is used as a learning reference. The copyright belongs to the original author.
THE END
二维码