Postman에서 테스트 스크립트를 작성하는 방법은 무엇인가요?
_____A1: 테스트 스크립트는 요청 후 반환된 응답을 검증하거나 자동화된 테스트를 실행하는 JavaScript 코드입니다. 이를 통해 API 응답값의 유효성을 체크하고, 조건에 따른 동작을 제어할 수 있습니다.
Q2: 테스트 스크립트를 어디에 작성하나요?
A2: Postman의 요청 탭에서 "Tests" 탭을 선택하면 테스트 스크립트를 작성할 수 있는 에디터가 나타납니다. 여기에 JavaScript 코드를 작성하면 됩니다.
Q3: 간단한 테스트 스크립트 예시는 무엇인가요?
A3: 예를 들어, 응답 상태 코드가 200인지 확인하려면 다음과 같이 작성합니다.
```javascript
pm.test("상태 코드가 200이어야 한다", function () {
pm.response.to.have.status(200);
});
```
Q4: 응답 본문의 특정 값을 검사하려면 어떻게 하나요?
A4: JSON 응답에서 특정 값을 확인하려면 `pm.response.json()`을 사용합니다. 예:
```javascript
pm.test("사용자 이름이 '홍길동'이어야 한다", function () {
var jsonData = pm.response.json();
pm.expect(jsonData.name).to.eql("홍길동");
});
```
Q5: 여러 개의 테스트 케이스를 작성할 수 있나요?
A5: 네, `pm.test` 함수를 여러 번 호출하여 여러 테스트 케이스를 작성할 수 있습니다.
Q6: 동적으로 변수에 값을 저장하는 테스트 스크립트 작성법은?
A6: 응답 데이터에서 값을 추출해 환경 변수 또는 글로벌 변수로 저장할 수 있습니다. 예:
```javascript
var jsonData = pm.response.json();
pm.environment.set("userId", jsonData.id);
```
Q7: 테스트 결과는 어디서 확인할 수 있나요?
A7: 요청을 실행한 후 하단의 "Tests Results" 영역에 각 테스트의 성공 또는 실패 결과가 보여집니다.
Q8: Postman 내에서 테스트 스크립트 실행 시 주의할 점은?
A8: JavaScript 코드를 작성할 때 문법 오류에 주의하고, 비동기 호출 대신 제공되는 pm API를 활용해 안정적인 테스트를 만드는 것이 좋습니다.
Q9: 테스트 스크립트에서 외부 라이브러리를 사용할 수 있나요?
A9: 기본적으로 Postman은 몇 가지 내장 라이브러리만 지원하며, 외부 라이브러리를 직접 임포트하는 것은 불가능합니다.
Q10: 자동화 테스트를 반복 실행하려면 어떻게 해야 하나요?
A10: Postman Collection Runner나 Postman Monitor를 사용해 작성한 테스트 스크립트가 포함된 요청들을 반복적으로 실행하고 결과를 자동으로 체크할 수 있습니다.
Postman에서 테스트 스크립트를 작성하는 방법에 대해 자세히 설명하겠습니다.
1. Postman 설치 및 기본 설정 Postman을 사용하기 위해서는 먼저 Postman을 설치해야 합니다.
설치 후, API 요청을 만들고 테스트할 수 있는 환경을 설정합니다.
2. 요청 만들기 1. 새 요청 생성 : Postman을 열고, "New" 버튼을 클릭한 후 "Request"를 선택합니다.
2. 요청 설정 : 요청의 이름과 설명을 입력하고, 요청을 저장할 컬렉션을 선택합니다.
3. HTTP 메서드 및 URL 입력 : GET, POST, PUT, DELETE 등 필요한 HTTP 메서드를 선택하고, 요청할 API의 URL을 입력합니다.
3. 테스트 스크립트 작성하기 Postman에서는 요청의 "Tests" 탭에서 JavaScript를 사용하여 테스트 스크립트를 작성할 수 있습니다.
테스트 스크립트는 요청이 완료된 후 실행됩니다.
기본 구조 ```javascript pm.test("테스트 설명", function () { pm.expect(actualValue).to.eql(expectedValue); }); ``` 예제 1. 상태 코드 확인 : API 응답의 상태 코드가 200인지 확인하는 테스트 스크립트입니다.
```javascript pm.test("상태 코드가 200이어야 한다", function () { pm.response.to.have.status(200); }); ```
2. 응답 시간 확인 : 응답 시간이 200ms 이하인지 확인하는 테스트입니다.
```javascript pm.test("응답 시간이 200ms 이하이어야 한다", function () { pm.expect(pm.response.responseTime).to.be.below(200); }); ```
3. JSON 응답 구조 확인 : 응답이 JSON 형식이며 특정 필드가 존재하는지 확인하는 테스트입니다.
```javascript pm.test("응답이 JSON 형식이어야 한다", function () { pm.response.to.be.json; }); pm.test("응답에 'data' 필드가 있어야 한다", function () { const jsonData = pm.response.json(); pm.expect(jsonData).to.have.property('data'); }); ```
4. 변수 사용하기 Postman에서는 환경 변수와 글로벌 변수를 사용하여 테스트 스크립트에서 동적으로 값을 참조할 수 있습니다.
```javascript pm.test("응답의 ID가 환경 변수와 일치해야 한다", function () { const jsonData = pm.response.json(); pm.expect(jsonData.id).to.eql(pm.environment.get("expectedId")); }); ```
5. 테스트 결과 확인하기 테스트를 실행한 후, Postman의 "Test Results" 탭에서 각 테스트의 결과를 확인할 수 있습니다.
성공한 테스트는 초록색으로 표시되고, 실패한 테스트는 빨간색으로 표시됩니다.
6. 테스트 자동화 Postman에서는 Newman이라는 CLI 도구를 사용하여 테스트를 자동화할 수 있습니다.
Newman을 사용하면 Postman 컬렉션을 커맨드라인에서 실행하고, CI/CD 파이프라인에 통합할 수 있습니다.
7. 추가 리소스 - Postman Documentation : Postman의 공식 문서에서 더 많은 예제와 기능을 확인할 수 있습니다.
- JavaScript Reference : JavaScript를 사용하여 복잡한 테스트를 작성할 수 있는 방법에 대한 자료를 찾아보세요.
결론 Postman에서 테스트 스크립트를 작성하는 것은 API의 품질을 보장하고, 개발 과정에서 발생할 수 있는 문제를 사전에 발견하는 데 매우 유용합니다.
다양한 테스트를 통해 API의 안정성과 신뢰성을 높일 수 있으며, 자동화된 테스트를 통해 반복적인 작업을 줄일 수 있습니다.
작성자:
박서연 [비회원]
| 작성일자: 1년 전
2024-11-24 07:41:23
조회수: 278 | 댓글: 0 | 좋아요: 0 | 싫어요: 0
조회수: 278 | 댓글: 0 | 좋아요: 0 | 싫어요: 0
내용이 부정확하다면 싫어요를 클릭해주세요.