- 기반 지식이 있어서 설명한 내용을 바로 알아들어서 좋았다.
- 설명 하는 것을 제대로 이해하는 것 같아서 좋았다.
- 의사소통하기 편했다.
- 떠오르는 불편함이 없다. 다른 사람들에게서 있던 불편함이 없었다는 의미이다.
- 딱히 없었다.
-
ApplicationRunner를 통해 데이터를 추가해놨는데, 코드로 개발용 데이터를 관리하는 것 보단 data.sql로 데이터를 초기화해라.
-
Controller, Service의 필드는 final을 붙여 필수 멤버 변수인 것을 표시해라.
- 이 객체를 생성할 때 필요한 멤버 변수를 초기화하도록 강제시켜 객체를 설계한 의도대로 사용하도록 만들어준다.
-
@ModelAttribute는 생략 가능하다.
-
Enum에서 열거형 이름에 해당하는 필드는 없어도 된다.
- name() 메서드와 toLowerCase() 를 사용해 구할 수 있다.
-
새로운 api와 uri 경로가 추가될 때마다 AcceptanceTest가 너무 커질 수 있다.
-
get, post, put, delete에 대한 중복 처리만 AcceptanceTest에서 제공해라.
<T> T post(String path, Map<String, String> params, Class<T> responseType) { return given(). body(params). contentType(MediaType.APPLICATION_JSON_VALUE). accept(MediaType.APPLICATION_JSON_VALUE). when(). post(path). then(). log().all(). statusCode(HttpStatus.CREATED.value()). extract().as(responseType); }
-
AcceptanceTest는 모든 인수 테스트에서 공통적으로 사용할 기능만 남기는게 좋다.
-
AcceptanceTest에 특정 도메인에 관련된 테스트가 있을 경우 상속해서 사용하다가 수정사항이 생길 경우 상속 받은 다른 테스트에도 영향을 준다. 그렇게 되면 테스트를 수정하기 어려워진다.
-
함께 사용하는 테스트 픽스쳐를 만들었다가 픽스쳐가 변경되면 다른 테스트까지 모두 수정해야 하는 경우가 생긴다. 그렇기 때문에 중복코드를 감수하더라도 픽스쳐를 따로 만들어준다.
-
-
비즈니스 로직을 서비스 객체에 노출하지 않도록 변경해라.