Postman으로 API 해보기

정지인·2025년 4월 7일

오늘은 제가 만든 Spring Boot 게시판 프로젝트를 Postman을 사용해서 직접 테스트해보는 과정을 소개하려고 합니다.

1. Postman이란?

API 개발 및 테스트를 위한 협업 플랫폼 중 하나로, 다양한 HTTP 요청을 보내고 응답을 확인할 수 있는 API 테스트 도구이다.
Postman을 사용하면 브라우저나 개발자 도구를 사용하지 않고도 API 요청을 보내고,
응답을 확인할 수 있어 개발 및 테스트 과정에서 편리하게 사용할 수 있다.

Postman은 API를 테스트할 수 있게 도와주는 툴입니다.
GET, POST, PUT, DELETE 등 다양한 HTTP 요청을 직접 만들어서 서버와 통신할 수 있어, 백엔드 개발자들에게 정말 유용한 도구예요.

2. Postman의 주요 기능

  • HTTP 요청 보내기
    : GET, POST, PUT, DELETE 등의 HTTP 요청을 보낼 수 있다.

  • 요청 파라미터 설정
    : HTTP 요청에 필요한 파라미터를 쉽게 설정할 수 있다.

  • 응답 확인
    : HTTP 요청에 대한 응답을 확인하고, JSON, XML 등의 다양한 형식으로 응답을 처리할 수 있다.

  • 히스토리 관리
    : 이전에 보낸 HTTP 요청과 응답을 저장하고, 다시 사용할 수 있다.

  • 환경 변수 설정
    : 서로 다른 환경에서 동일한 HTTP 요청을 보내야 하는 경우, 환경 변수를 설정해 간편하게 처리할 수 있다.

  • API 문서화
    : API 요청과 응답을 문서화하고, 다른 개발자와 공유할 수 있다.
    Postman은 무료로 사용할 수 있으며, 다양한 템플릿과 예제 코드를 제공해주어 사용자가 더욱 효과적으로 API를 테스트하고 개발할 수 있도록 도와준다.

출처

3. API 테스트에 Postman을 사용하는 이유는 무엇인가요?

1. 인터페이스가 직관적이다!

  • 복잡한 명령어나 설정 없이도, 버튼 클릭 몇 번이면 GET, POST, PUT, DELETE 요청을 보낼 수 있어요.

2. 요청 & 응답을 한눈에 확인 가능

  • 요청을 보내고
  • 응답 상태코드 / 바디 / 시간 등을 실시간으로 확인이 가능합니다.

3. 반복 테스트에 유리

  • API 요청을 저장하고 재사용할 수 있어서, 매번 값을 다시 입력할 필요가 없습니다.

4. 팀 협업에 용이

  • Postman에서 만든 요청과 테스트 스크립트를 팀원과 공유할 수 있어요.

그러면 이제 위에 내용을 참고하고 Postman을 이용해서 테스트를 해보겠습니다.


👤 회원가입 해보기

먼저 Postman을 통해서 회원가입 API를 테스트해봤습니다.

먼저 회원가입 페이지로 들어간 뒤에 Preview 통해 실시간으로 볼 수 있습니다!

회원가입 페이지는 @GetMapping과 @PostMapping 두 가지 방식으로 구현했는데요:

  • GET 방식은 회원가입 폼을 보여줄 때 사용

  • POST 방식은 실제로 데이터를 서버로 전송할 때 사용

즉, Postman을 통해 회원가입 데이터를 보낼 때는 반드시 POST 방식으로 요청해야 합니다!

요청을 보내면 이렇게 정상적으로 회원가입이 완료되고,

MySQL Workbench를 통해 실제로 데이터가 잘 저장된 것을 확인할 수 있었습니다.


🔐 로그인 해보기

이제 방금 가입한 계정으로 로그인을 해봅니다.

Postman에서 로그인 정보를 입력해 요청을 보내면,

정상적으로 로그인되어 메인 페이지로 이동한 것을 확인할 수 있습니다.


📝 글 작성하기

이번엔 게시글을 작성해봅니다.
저는 @RequestParam을 사용해 email을 받아오도록 설계했기 때문에, 요청 시 email도 함께 보내야 합니다.

email, 제목, 내용을 입력 후 요청을 보내면,

정상적으로 게시글 작성이 완료되었고,

실제로 페이지에도 새로운 글이 등록된 것을 볼 수 있었습니다.


✏️ 게시글 수정하기

이제 작성한 글을 수정해볼게요.

수정할 제목과 내용을 입력해서 요청을 보내면,

내용이 잘 변경된 것을 확인할 수 있었습니다.


🗑 게시글 삭제하기

이번엔 작성한 글을 삭제해보겠습니다.

이때 중요한 점은:

  • id는 게시글의 고유 ID를 의미합니다

  • 저는 RequestParam 방식을 사용했기 때문에 올바른 email 값도 함께 보내야 삭제가 됩니다

이렇게 정상적으로 삭제된 것을 확인할 수 있었습니다.


🚪 로그아웃 해보기

마지막으로 로그아웃도 해보았습니다.

Preview를 통해 로그아웃 처리된 것도 확인 완료!


⚠️ Postman 쓰면서 겪은 문제들

Postman을 처음 쓸 때는 생각보다 쉬웠지만,
막상 요청을 보내다 보니 "어? 왜 안 되지?" 싶은 순간들이 몇 번 있었습니다.
그 중 하나는 405 오류 (Method Not Allowed) 였습니다 ...
회원가입 기능을 만들고 나서, Postman으로 가입 정보를 보내봤는데 아래처럼 405 에러가 발생했습니다.

HTTP 405 Method Not Allowed

처음엔 내가 또 뭐 잘못했나 싶었는데, 알고 보니 원인은 정말 단순한 실수였습니다.

에러 코드를 확인해보니까
[org.springframework.web.HttpRequestMethodNotSupportedException: Request method 'POST' is not supported]

원인은? 잘못된 HTTP 메서드...
제가 회원가입 기능을 만들 때,

  • GET 메서드: 회원가입 폼을 보여줄 때 사용
  • POST 메서드: 실제 회원가입 정보를 전송할 때 사용

이렇게 구분해서 만들었는데,
Postman에서 실수로 GET으로 데이터를 보내고 있었습니다...
서버는 GET 요청으로는 정보를 받지 않기 때문에,
당연히 "이 메서드는 허용되지 않았습니다"라고 오류가 뜨던거였습니다.


✅ 느낀점

이번 글에서는 Postman을 활용해 제가 만든 게시판의 주요 기능을 직접 테스트해보는 과정을 소개해드렸습니다.

포스트맨을 이용해서 제가 만든 API를 테스트 해봤는데 테스트가 통과할 때 마다 뭔가 제가 대단한거라도 만든 것 마냥 뭔가 응근히 기분 좋았습니다.

확실히 Postman을 사용하니까 GET이나 Post로 바꿔주면서 편하게 사용할 수 있어서 편했습니다! 가장 편했던 부분은 회원가입하고 로그인을 할 때 url만 바꿔주어도 로그인이 되서 따로 아이디 비번을 다시 칠 필요가 없어서 그 부분이 편했던 것 같습니다 ...

사실 옛날에 Postman을 사용했던 경험이 있었는데 , 그때는 이걸 왜 쓰지? 라기보단 그냥 하란대로 했었는데 제가 여태 잘못 공부하고 있었다고 깨닭게 해줬습니다. 이번 기회에 Postman이 무엇인지 알 수 있었고, 왜 사용하는지도 알 수 있던 시간이였습니다!

profile
멋쟁이사자 13기 백엔드

3개의 댓글

comment-user-thumbnail
2025년 4월 7일

하루하루 쑥쑥 성장하시는게 보일 정도로 열심히 하시네요!

답글 달기
comment-user-thumbnail
2025년 4월 8일

글 수정과 삭제부분은 안해보았는데 지인님 글 덕분에 어떻게 해야할 지 예상이 가네요 시험기간 끝나고 해볼때 참고해볼게요!

답글 달기
comment-user-thumbnail
2025년 4월 8일

너무 잘 정리해주셔서 이해하기 좋았습니다! 감사합니다

답글 달기