728x90
서비스 레벨에서 간단한 메쏘드 하나 만들고(껍데기만)
인텔리제이 기준으로 단축키 (CMD+N) 이나 마우스 우측 클릭 후 Generate(생성)을 클릭 후
Test 옵션을 클릭하면 "Create Test" 라는 팝업창을 뛰울 수 있다.
JUnit 5버전이 기본값으로 설정되어있는데,
옵션항목에 보면 /@Before, @After라는 영역을 확인할 수 있을 것이다.
class ReserveServiceTest {
@BeforeEach
void setup() {}
@AfterEach
void afterSetup(){}
@Test
Void getReserveInfo(){}
}
테스트할때 @SpringBootTest 어노테이션은 webEnvironment 매개변수를 지원하는데
(MOCK, RANDOM_PORT, DEFINED_PORT, NONE) .MOCK이 기본값이 된다.
내장 서버를 실행하는 대신, MOCK 환경의 웹환경을 사용하는 것이다.
RANDOM_PORT로 변경 시, application context를 로딩하고 내장서버를 사용하여, 임의포트
사용 및 실제 웹환경에서 테스트가 가능하다.
DEFINED_PORT의 경우 RANDOM_PORT와 동일하나 차이점은 우리가 property에 지정한
포트를 사용한다는 것이다.(기본 포트 8080)
NONE의 경우, Mocking이나 실제 웹 서버를 사용하지 않고 application context만 생성 된다.
아래의 코드는 DEFINED_PORT 를 적용한 테스트 코드 이다.
@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.DEFINED_PORT)
@AutoConfigureWebTestClient
728x90
'Java Spring' 카테고리의 다른 글
Java 버전 관리 하기 temurin (0) | 2024.11.28 |
---|---|
모키토 (Mockito) - Java Spring Test Code 기초 (0) | 2024.09.21 |
@Builder 빌더패턴 (2) | 2024.09.17 |
단위테스트 (unit test) - Spring Boot Test !! (0) | 2024.09.17 |
영속성 이란? (Java Spring Boot 완전기초) (1) | 2024.09.16 |