작성
·
389
0
안녕하세요. 늘 좋은 강의 감사합니다.
강의를 듣고 테스트를 하면서
갑자기 발생되는 에러 2가지를 못잡아 질문을 드립니다.
1. 아래의 코드를 실행시키게 되면 NullpointException이 발생이됩니다..
@SpringBootTest
@AutoConfigureMockMvc
@AutoConfigureRestDocs
@Import(RestDocsConfiguration.class)
@ActiveProfiles("test")
public class IndexControllerTest {
@Autowired
MockMvc mockMvc;
@Test
public void index() throws Exception {
this.mockMvc.perform(get("/api/"))
.andExpect(status().isOk())
.andExpect(jsonPath("_links.events").exists());
}
}
하지만. 아래의 같이 코드를 실행시키면 links는 잘 작동됩니다.
2. createEvent_Bad_Request 테스트 코드 실행시 발생되는 에러..
저게 의도한 것은 400에러였지만 201이 나와 매우 당황스럽습니다.(이강의대로 하기전에는 에러 잘 잡았습니다.)
현재 스프링부트 2.4.2 버전을 사용중입니다.
해당 코드는
https://github.com/rlawls1991/study_api
에서 받을 수 있으며
답변 2
1
디버거를 사용해서 1. 어떤 레퍼런스가 null인지 확인해 보세요. 2역시 코드 흐름이 왜 의도한대로 400이 아니라 요청이 201로 흘러가는지 (아마도 바인딩 에러에 뭔가 안잡혔나보네요.) 확인해 보시기 바랍니다.
0
1. NullpointException
-> 제 잘못이었습니다... application을 제대로된 패키지에 넣지 않은 오류였습니다.
2. 제가 공통 메소드를 잘못 작성해서 발생된 에러입니다.
return ResponseEntity.badRequest().body(new ErrorsResource(errors));
더 깊게 찾지 못하고 질문드린점 죄송하고 답변 감사합니다.!