백엔드 Back-end/테스트 Test

Q. Postman으로 POST해서 생성한 id 받아서 PATCH DELETE 테스트할 수 있을까?

Tap to restart 2022. 2. 14. 07:00
반응형

A. 있다. 가능하다. Tests 탭을 눌러서 코드를 입력하면 환경변수에 등록할 수 있다.

 

코드 예는 아래와 같다.

var jsonData = pm.response.json();
pm.environment.set('article_id', jsonData['id']);

pm은 포스트맨 객체이고, response는 응답이다. 거기서 json을 jsonData로 저장한 것이고, 새로 생성된 'id'를 받아서 'article_id'로 환경변수에 저장하게 된다.

 

이 해당 환경변수를 다음 PATCH나 DELETE에 사용하면 된다. 아래처럼 id 입력 자리에 {{article_id}}를 입력하면 환경변수로 저장한 article_id를 불러오게 되고 방금 POST한 데이터를 수정할 수 있게 된다.

PATCH http://localhost:8000/articles/{{article_id}}

 

Postman을 활용 순차 테스트 설계 방법

1. 우선 새로운 데이터를 POST한다. 해당 id를 환경변수에 저장한다.

2. {{id}}를 활용 GET해서 개별 데이터가 저장되었는지 확인한다.

3. {{id}}를 활용 PATCH로 새로 입력한 데이터를 일부 수정한다.

4. {{id}}를 활용 DELETE로 새로 입력하고 수정한 데이터를 삭제한다.

5. {{id}}를 활용 GET해서 개별 데이터가 삭제된 것을 확인한다.

 

collection 목록에서 마우스 오른쪽 버튼을 누르면 Run collection 목록이 있다.

위 순서대로 request 목록을 뒀다면 한꺼번에 쭉 테스트할 수 있다.

따로 개별 POST, PATCH, DELETE, GET 테스트할 필요 없이.

반응형