처음에 엔티티 이름을 Board로 지었는데 게시판은 Board지만, 게시글 하나 하나는 Post가 더 적합하다는 생각이 들었다. 그래서 Board -> Post로 바꾸기로 마음먹었는데, 보통 Test코드가 없을 때는 엄청 수작업이고, 나 혼자 할 수 없을 것이다. 50개 정도 테스트가 터지고, 문제점 확인 후 빠르게 고칠 수 있었다. 갑자기 뿌듯해서..
테스트코드
문제점 @DisplayName("게시글에 필요한 정보를 입력 후 등록을 하면 게시글이 저장된다.") @Test void createBoard() throws Exception { // given String title = "게시글제목"; String content = "게시글내용"; PostCreateRequestDto request = createPostRequest(title, content); // when & then mockMvc.perform(post("/api/v1/board") .content(objectMapper.writeValueAsString(request)) .contentType(MediaType.APPLICATION_JSON)) .andDo(print()) .andExpect(..
문제점 컨트롤러를 @WebMvcTest로 진행하여 필요한 빈들만 등록한 후 나머지 연관관계가 있는 빈들은 Mock 가짜로 등록해주기로 하였다. @WebMvcTest(controllers = { AuthController.class }) public abstract class ControllerTestSupport { @Autowired protected MockMvc mockMvc; @Autowired protected ObjectMapper objectMapper; @MockBean protected AuthService authService; } Controller 테스트에 필요한 빈들을 추상 클래스로 분리하여 지정해두었다. class AuthControllerTest extends Controlle..