spring boot가 1.4로 버전을 높이면서 테스트에 대한 고려를 많이 한 흔적이 엿보인다. spring boot 1.3 버전까지 WebIntegrationTest를 위해 필요한 설정 및 코드가 많았는데 spring boot 1.4에서는 다음과 같이 구현함으로써 API에 대한 테스트가 가능해졌다.
import org.junit.Test;
import org.junit.runner.RunWith;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.boot.test.context.SpringBootTest.WebEnvironment;
import org.springframework.boot.test.web.client.TestRestTemplate;
import org.springframework.http.ResponseEntity;
import org.springframework.test.context.junit4.SpringRunner;
@RunWith(SpringRunner.class)
@SpringBootTest(webEnvironment=WebEnvironment.RANDOM_PORT)
public class HomeControllerTest {
private static final Logger logger = LoggerFactory.getLogger(HomeControllerTest.class);
@Autowired
private TestRestTemplate restTemplate;
@Test
public void home() {
ResponseEntity<String> result = this.restTemplate.getForEntity("/", String.class);
logger.debug(result.getBody());
}
}
앞으로 TestRestTemplate 활용해 웹 클라이언트 테스트 자동화에도 도전해 보자.
0개의 의견 from SLiPP
의견을 남기기 위해서는 SLiPP 계정이 필요합니다.
안심하세요! 회원가입/로그인 후에도 작성하시던 내용은 안전하게 보존됩니다.
SLiPP 계정으로 로그인하세요.
또는, SNS 계정으로 로그인하세요.