도구 소개
코드로 어설션을 작성하기 전에 실제 응답에 먼저 시험해 보고 어떤 것이 통과하는지 확인하면 도움이 됩니다. JSON 바디와, 필요하면 DevTools나 curl -i에서 복사한 상태 코드와 헤더를 붙여 넣고 표에 검사를 정의하세요. JSONPath의 존재 여부, 값 일치, 타입, regex 일치, 항목 포함, 길이, 숫자보다 크거나 작은지를 검사할 수 있습니다. 상태 검사는 정확한 코드나 2xx 같은 클래스를 받으며, 헤더 이름은 대소문자 구분 없이 비교합니다. 결과는 테스트 러너처럼 ✓와 ✕ 행, 그리고 버그 리포트에 복사할 수 있는 “3 passed, 1 failed” 요약으로 표시됩니다. JSONPath는 스크립트 평가를 끈 상태로 평가되므로 필터 표현식은 실행되지 않고 거부됩니다. 붙여 넣은 텍스트로는 응답 시간을 측정할 수 없으므로 해당 검사는 건너뜀으로 표시됩니다.
사용 방법
- 응답 바디 JSON을 붙여 넣고, 검사하려면 상태 코드와 헤더도 붙여 넣으세요. 또는 “Load sample”(샘플 불러오기)을 클릭하세요.
- 검사를 추가하세요. 대상을 고르고 $.data[*].email 같은 JSONPath나 헤더 이름을 입력한 뒤 연산자와 기대값을 지정합니다.
- 입력하는 대로 결과를 확인하고 리포트를 복사하세요. 여러 값과 일치하는 경로는 모든 값이 통과해야 합니다.
API 응답 검증기 자주 묻는 질문
$..[?(@.price > 10)] 같은 필터 표현식은 왜 실패하나요?
필터와 스크립트 표현식은 코드를 평가해야 하는데, 이 도구는 안전을 위해 이를 비활성화합니다. 대신 $.items[*].price 같은 와일드카드 경로에 “>” 같은 연산자를 쓰세요. 일치하는 모든 값이 통과해야 합니다.
기대값은 어떻게 해석되나요?
JSON으로 파싱되면 JSON으로 비교합니다. 즉 42는 숫자, "42"는 문자열, true는 불리언, null은 null입니다. 그 외에는 일반 텍스트로 비교합니다. 객체와 배열의 동등 비교는 키 순서를 무시합니다.
이 검사를 자동화 테스트로 바꿀 수 있나요?
네. 검사가 통과하면 API 어설션 빌더로 동일한 Playwright, Postman, REST Assured, Cypress 어설션을 생성하세요.