Api테스트작성연습
Api테스트작성연습
필기 가자
API TEST
| 구분 | 단위 테스트 | API 테스트 | | — | — | — | | 테스트 대상 | 메서드, 클래스와 같은 작은 코드 단위 | 애플리케이션의 비즈니스 로직과 데이터 통신 | | 의존성 | 다른 컴포넌트나 데이터베이스와의 의존성을 최소화(주로 Mock 객체 사용) | 데이터베이스, 외부 API 등과의 통합된 환경에서 실행 | | 목적 | 내부 로직의 정확성과 코드 품질 확인 | 클라이언트와 서버 간의 인터페이스가 올바르게 동작하는지 확인 | | 속도 | 일반적으로 빠름 | 상대적으로 느림 (네트워크 요청/응답 처리 포함) | | 실행 도구 | JUnit, Mockito 등 | Postman, Rest Assured, MockMVC 등 | | 예제 | java public int add(int a, int b) { return a + b; } | json { "userId": 1, "productId": 101, "quantity": 2 } |
MockMVC
- MockMVC는 Spring Framework에서 제공하는 도구로, 컨트롤러 레이어의 테스트를 지원합니다.
- 특징:
- 실제 서블릿 컨테이너를 사용하지 않고도 HTTP 요청/응답을 시뮬레이션할 수 있음.
- 요청의 유효성, 컨트롤러의 로직, 응답 상태 코드, JSON 반환 값을 모두 검증 가능.
- 실제 데이터베이스와의 의존성을 제거하고 가상의 환경에서 테스트를 수행.
4. Rest Assured를 활용한 API 자동화 테스트
4.1 Rest Assured 개념
- Rest Assured는 Java 기반의 HTTP 요청 및 응답 테스트를 간단히 수행할 수 있는 API 자동화 테스트 라이브러리입니다.
- 특징:
- RESTful API의 요청과 응답을 간결한 코드로 검증 가능.
- JSON/XML 형식의 응답 데이터를 쉽게 파싱하고 검증할 수 있음.
- GET, POST, PUT, DELETE 등 모든 HTTP 메서드 지원.
4.4 Rest Assured의 장점
- 간결함:
- 코드 작성이 간단하며, 가독성이 뛰어남.
- 통합 테스트 가능:
- HTTP 요청/응답을 실제로 수행하므로 통합 테스트에 적합.
- 유연한 검증:
- 다양한 응답 데이터(JSON/XML)의 검증 기능 제공.
Action Plan
- Rest Assured만 사전에 테스트 해보기.
수업 내용 필기 정리.
This post is licensed under CC BY 4.0 by the author.