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

API 개발 및 테스트를 위한 협업 플랫폼 중 하나로, 다양한 HTTP 요청을 보내고 응답을 확인할 수 있는 API 테스트 도구이다.
Postman을 사용하면 브라우저나 개발자 도구를 사용하지 않고도 API 요청을 보내고,
응답을 확인할 수 있어 개발 및 테스트 과정에서 편리하게 사용할 수 있다.
Postman은 API를 테스트할 수 있게 도와주는 툴입니다.
GET, POST, PUT, DELETE 등 다양한 HTTP 요청을 직접 만들어서 서버와 통신할 수 있어, 백엔드 개발자들에게 정말 유용한 도구예요.
HTTP 요청 보내기
: GET, POST, PUT, DELETE 등의 HTTP 요청을 보낼 수 있다.
요청 파라미터 설정
: HTTP 요청에 필요한 파라미터를 쉽게 설정할 수 있다.
응답 확인
: HTTP 요청에 대한 응답을 확인하고, JSON, XML 등의 다양한 형식으로 응답을 처리할 수 있다.
히스토리 관리
: 이전에 보낸 HTTP 요청과 응답을 저장하고, 다시 사용할 수 있다.
환경 변수 설정
: 서로 다른 환경에서 동일한 HTTP 요청을 보내야 하는 경우, 환경 변수를 설정해 간편하게 처리할 수 있다.
API 문서화
: API 요청과 응답을 문서화하고, 다른 개발자와 공유할 수 있다.
Postman은 무료로 사용할 수 있으며, 다양한 템플릿과 예제 코드를 제공해주어 사용자가 더욱 효과적으로 API를 테스트하고 개발할 수 있도록 도와준다.
그러면 이제 위에 내용을 참고하고 Postman을 이용해서 테스트를 해보겠습니다.
먼저 Postman을 통해서 회원가입 API를 테스트해봤습니다.

먼저 회원가입 페이지로 들어간 뒤에 Preview 통해 실시간으로 볼 수 있습니다!
회원가입 페이지는 @GetMapping과 @PostMapping 두 가지 방식으로 구현했는데요:
GET 방식은 회원가입 폼을 보여줄 때 사용
POST 방식은 실제로 데이터를 서버로 전송할 때 사용
즉, Postman을 통해 회원가입 데이터를 보낼 때는 반드시 POST 방식으로 요청해야 합니다!

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

MySQL Workbench를 통해 실제로 데이터가 잘 저장된 것을 확인할 수 있었습니다.
이제 방금 가입한 계정으로 로그인을 해봅니다.

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

정상적으로 로그인되어 메인 페이지로 이동한 것을 확인할 수 있습니다.
이번엔 게시글을 작성해봅니다.
저는 @RequestParam을 사용해 email을 받아오도록 설계했기 때문에, 요청 시 email도 함께 보내야 합니다.

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

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

실제로 페이지에도 새로운 글이 등록된 것을 볼 수 있었습니다.
이제 작성한 글을 수정해볼게요.

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

내용이 잘 변경된 것을 확인할 수 있었습니다.
이번엔 작성한 글을 삭제해보겠습니다.

이때 중요한 점은:
id는 게시글의 고유 ID를 의미합니다
저는 RequestParam 방식을 사용했기 때문에 올바른 email 값도 함께 보내야 삭제가 됩니다

이렇게 정상적으로 삭제된 것을 확인할 수 있었습니다.
마지막으로 로그아웃도 해보았습니다.

Preview를 통해 로그아웃 처리된 것도 확인 완료!
Postman을 처음 쓸 때는 생각보다 쉬웠지만,
막상 요청을 보내다 보니 "어? 왜 안 되지?" 싶은 순간들이 몇 번 있었습니다.
그 중 하나는 405 오류 (Method Not Allowed) 였습니다 ...
회원가입 기능을 만들고 나서, Postman으로 가입 정보를 보내봤는데 아래처럼 405 에러가 발생했습니다.
HTTP 405 Method Not Allowed
처음엔 내가 또 뭐 잘못했나 싶었는데, 알고 보니 원인은 정말 단순한 실수였습니다.
에러 코드를 확인해보니까
[org.springframework.web.HttpRequestMethodNotSupportedException: Request method 'POST' is not supported]
원인은? 잘못된 HTTP 메서드...
제가 회원가입 기능을 만들 때,
이렇게 구분해서 만들었는데,
Postman에서 실수로 GET으로 데이터를 보내고 있었습니다...
서버는 GET 요청으로는 정보를 받지 않기 때문에,
당연히 "이 메서드는 허용되지 않았습니다"라고 오류가 뜨던거였습니다.
이번 글에서는 Postman을 활용해 제가 만든 게시판의 주요 기능을 직접 테스트해보는 과정을 소개해드렸습니다.
포스트맨을 이용해서 제가 만든 API를 테스트 해봤는데 테스트가 통과할 때 마다 뭔가 제가 대단한거라도 만든 것 마냥 뭔가 응근히 기분 좋았습니다.
확실히 Postman을 사용하니까 GET이나 Post로 바꿔주면서 편하게 사용할 수 있어서 편했습니다! 가장 편했던 부분은 회원가입하고 로그인을 할 때 url만 바꿔주어도 로그인이 되서 따로 아이디 비번을 다시 칠 필요가 없어서 그 부분이 편했던 것 같습니다 ...
사실 옛날에 Postman을 사용했던 경험이 있었는데 , 그때는 이걸 왜 쓰지? 라기보단 그냥 하란대로 했었는데 제가 여태 잘못 공부하고 있었다고 깨닭게 해줬습니다. 이번 기회에 Postman이 무엇인지 알 수 있었고, 왜 사용하는지도 알 수 있던 시간이였습니다!
하루하루 쑥쑥 성장하시는게 보일 정도로 열심히 하시네요!