Test 코드에서 @Slf4j 사용하기

2024. 8. 23. 16:16 테스트 코드/JUnit

일반적으로 스프링 부트로 개발을 할 때 lombok 라이브러리는 거의 필수입니다.

 

@Slf4j를 쉽게 어노테이션 형식으로 사용합니다.

(@Slf4j는 Simple Logging Facade for Java의 줄임말)

 

사용법은 간단합니다. 일반 클래스에서는 아래 코드와 같이 사용합니다.

@Slf4j
@RequiredArgsConstructor
@RequestMapping("/v1/api/members")
@RestController
public class MemberController {

    @PostMapping
    public String createMember(@RequestBody @Validated MemberRequest memberRequest) {
        log.info("정보 확인 ->{}", memberRequest);
        return "success";
    }
}

 

프로젝트 경로에서 test 내부에 테스트 코드를 만들고 일반적인 서버에서 사용하듯 클래스 최상위에 동일하게 작성하면 됩니다.

@Slf4j
@SpringBootTest
class MemberControllerTest {

그런데 기본 세팅에서는 테스트코드에서는 @Slf4j라고 쓴다고 해서 바로 사용할 수 없습니다.

gradle설정이 추가로 필요합니다.

 

build.gradle 파일에 dependencies 항목에 다음과 같이 추가해야 사용 가능합니다.

testCompileOnly 'org.projectlombok:lombok'
testAnnotationProcessor 'org.projectlombok:lombok'