API Testing with Postman

GET을 테스트 해볼수 있는 사이트는 많은 것 같은데, POST, PUT, DELETE을 연습하기 위해서는 우리의 서버가 필요하다. Demo Serverarrow-up-right의 README 대로 따라하면 Postman 연습 서버를 구동할 수 있다.

Basic

서버를 실행하는 것을 간단히 살펴보자.

리포지토리 git clone 후

http://localhost:3000/arrow-up-right 에 들어가보면,

GET

블로그 포스팅들을 보기 위해, GET 요청을 해보자.

http://localhost:3000/blogpostsarrow-up-right

블로그의 댓글도 가져와보자.

http://localhost:3000/blogposts?_embed=commentsarrow-up-right

결과

POST

2번째 포스팅을 작성해보자.

아래 JSON을 body에다가 작성해주면 된다. (이쁘게 보기 위해, raw 선택후 JSON 선택)

http://localhost:3000/blogpostsarrow-up-right

다시 GET 요청을 하면 2번째 블로그가 추가됐다.

PUT

http://localhost:3000/blogposts/1arrow-up-right

1번째 블로그 포스팅의 제목을 바꿔보자.

바뀐 결과API 테스트 자동화API 테스트 자동화

DELETE

첫번째 블로그 글을 삭제해보자.

http://localhost:3000/blogposts/1arrow-up-right

결과 (2번째 포스트만 남아있다)

API 테스트 자동화

컬렉션 변수 설정

Nationality를 캐나다로 설정해뒀다.

랜덤 유저 생성 API로 테스트 해보기

https://randomuser.me/api?nat={{Nationality}arrow-up-right}

캐나다에 살고 있는 유저 정보를 랜덤으로 가져왔다,

결과

DOCarrow-up-right을 보면, 다른 나라들도 가능하다. (예, 독일 = DE)

값 검증 위한 테스트 스크립트

결과가 200이 오면, 테스트가 성공하는 자바스크립트 코드를 넣어줬다. 결과를 보면 패스한 것을 볼 수 있다. 안에 코드 문법은 chai assertaion libraryarrow-up-right 를 사용한다. 코드는 자동으로 생성해주는 오른쪽 탭 snippets을 이용하면 편리하다.

다른 예제로, 리턴 받은 JSON의 이메일 값이 @ 기호 있나 확인해보기.

만약 컬렉션 안에 있는 모든 요청에서 테스트를 적용하고 싶다면, 다음과 같이 전역으로 추가하면 된다.

자주 사용되는 URL 같은 경우 환경에 추가한다.

환경 변수 사용을 위해선, 오른쪽 위에서 환경을 선택해줘야 한다. 눈 모양을 누르면, 지정한 값을 볼 수 있다.

다음과 같이 사용한다.

Sharing Code Between Tests in Postman

반복되는 코드를 Pre-request Script에 넣어줄 수 있다.

Mocking with Postman

목 서버 생성한다.

추가된 Mock 서버 확인

mock 하기전에 서버에게 무엇을 할지 알려줘야한다

example 더하기

해당 데이터를 리턴하게끔 예제를 지정함으로써 mock 서버에게 알려줬다.

이제 로컬 mock 서버에 요청해보자

https://9b4ff64a-6223-4777-9607-fd7b407ff970.mock.pstmn.io/api?nat=DEarrow-up-right

이럼으로써, 랜덤유저 사이트에 요청을 보낸것이 아닌 로컬의 mock 서버로 보낸다.

Building Quality APIs using Postman

시간을 가져와보자.

http://worldtimeapi.org/api/timezone/EUROPE/Londonarrow-up-right

마크다운을 이용해, 요청에 대한 설명을 추가했다.

view documentation 을 클릭

API Monitoring

모니터를 클릭한다.

모니터링할 컬렉션을 지정후 스케줄링을 할 수 있다.

이메일로도 noti를 받을 수 있다.

Last updated