"spring-boot-starter-test" 디펜던시를 추가했다면
JUnit을 위한 추가 디펜던시는 필요하지 않다.
스프링부트는 애플리케이션 테스트를 위한 많은 기능을 두 가지 모듈로 제공한다.
이니셜 라이즈로 프로젝트를 생성 하였으면 이미 테스트를 위한 디펜던시가 추가 되어 있다.
("spring-boot-starter-test")
JUnit 테스트는 테스트 대상 클래스와 테스트 클래스는 같은 패키지 내에 있어야 한다.
File > Project Structure > Module 에서 test > java 폴더 선택 후
Mark as에서 'Tests' 를 선택 후 적용해야 한다.
Test Source Folders 로 잘 지정 되면 초록색 폴더로 바뀌어야 한다.
기존 클래스에 커서를 두고 Alt + Enter 를 누르고 Create Test 를 클릭한다.
Test 할 라이브러리를 선택한다. 나는 JUnit5 를 선택하고 getId 메서드를 작성시켰다.
아래와 같이 정상 동작을 확인 할 수 있는 간단한 테스트 코드를 작성하였다.
1) 테스트 클래스는 반드시 public으로 선언해야 한다.
2) 클래스명은 관례상 테스트클래스명 + Test로 끝나는 이름을 사용 한다.
3) @Test 어노테이션을 선언한 메서드는 JUnit이 알아서 실행 할 수 있게 한다.
테스트를 원하는 메서드를 실행한다.
"Test passed" 정상 처리 되었음을 알 수 있다.
메서드 | 설명 |
---|---|
assertEquals(a, b); | 객체 A와 B의 실제 값이 일치한지 확인한다. assertEquals 메서드는 두 객체의 값의 비교 |
assertSame(a, b); | 객체 A와 B가 같은 객체임을 확인한다. assertSame 메서드는 두 객체가 동일한지 객체의 비교 (== 연산자와 같다) |
assertTrue(a); | 조건 A가 참인가를 확인한다. |
assertNotNull(a); | 객체 A가 null이 아님을 확인한다. |