피드로 돌아가기
Dev.toBackend
원문 읽기
Status Code 중심 검증 탈피 및 Response Schema 강제화를 통한 API 안정성 확보
REST API Testing: What Every QA Engineer Must Know
AI 요약
Context
단순 HTTP Status Code 확인 위주의 API 테스트 방식으로 인한 Production 환경의 데이터 정합성 결함 발생. Response Payload의 필드 누락 및 타입 불일치 문제를 사전에 차단하는 엄격한 검증 체계 필요.
Technical Solution
- Idempotency 특성에 따른 HTTP Method(GET, PUT, DELETE 등)별 기대 동작 및 상태 코드 정밀 정의
- Resource 전체 교체(PUT)와 부분 업데이트(PATCH)의 동작 차이에 따른 Payload 정합성 검증 로직 설계
- Happy Path 외에 400(Bad Request), 401(Unauthorized), 403(Forbidden), 404(Not Found), 409(Conflict), 405(Method Not Allowed) 등 에러 케이스의 세분화된 시나리오 구축
- 응답 데이터의 구조, 데이터 타입, 필수 필드 존재 여부를 검증하는 JSON Schema Validation 도입
- POST 요청 후 GET 요청을 통해 데이터 생성 여부를 확인하는 Side Effect 검증 체계 적용
- Query Parameter의 필터링, 기본값 적용, Pagination 경계값 처리를 통한 데이터 추출 정확도 확보
실천 포인트
- [ ] 단순 200 OK 확인을 넘어 응답 바디의 JSON Schema 일치 여부를 검증하는가 - [ ] PUT과 PATCH의 동작 차이를 구분하여 필수 필드 누락 시의 예외 처리를 테스트하는가 - [ ] Idempotency가 보장되어야 하는 Method의 반복 요청 시 동일한 결과가 반환되는가 - [ ] 4xx, 5xx 에러 응답 시 사용자에게 명확한 에러 메시지가 전달되는가 - [ ] API 호출 후 실제 DB나 상태 변화가 일어났는지 Side Effect를 교차 검증하는가