1) Gradle 의존성 추가
compile('org.projectlombok:lombok')
2) 롬복 플러그인 설치
3) Enable annotation processing 체크
settings -> Build -> compiler-> annotation processors
1) HelloResponseDto 생성하기
2) DTO 코드 생성하기
@Getter
@RequiredArgsConstructor //생성자 자동으로 만들어짐
public class HelloResponseDto {
private final String name;
private final int amount;
}
@Getter
@RequiredArgsConstructor
3) HelloResponseDtoTest 생성하기
public class HelloResponseDtoTest {
@Test
public void 롬복_기능_테스트() {
//given
String name = "test";
int amount = 1000;
//when
HelloResponseDto dto = new HelloResponseDto(name, amount);
//then
assertThat(dto.getName()).isEqualTo(name);
assertThat(dto.getAmount()).isEqualTo(amount);
}
}
테스트 코드 작성 후 실행 성공 화면
롬복을 통해 get 메소와 생성자가 정상적으로 생성되는 것을 확인할 수 있음
4) HelloController에 새로운 API 추가 생성
@GetMapping("/hello/dto")
public HelloResponseDto helloDto(@RequestParam("name") String name, @RequestParam("amount") int amount){
return new HelloResponseDto(name, amount);
}
5) HelloControllerTest코드 작성
@Test
public void helloDto가_리턴된다() throws Exception {
String name = "hello";
int amount = 1000;
mvc.perform(
get("/hello/dto")
.param("name", name)
.param("amount", String.valueOf(amount)))
.andExpect(status().isOk())
.andExpect(jsonPath("$.name", is(name)))
.andExpect(jsonPath("$.amount", is(amount)));
}
parma
jsonPath
테스트코드 실행 후 성공 화면