안녕하세요~
인텔리 j를 써가면서 제가 편하게 쓰는 팁들을 공유하고 싶어서 글을 올립니다... 하여!!
'몰라도 상관없지만 알면 좋은' 팁입니다.
인텔리 j를 시작하시는 분들에게 괜찮은 팁이 되었으면 좋겠습니다.
제가 인텔리 J 라고는 적었지만 인텔리J가 말고 웹스톰 파이참 등.. 젯 브레인에서 제공되는 ide 는 거의 공통으로 사용할 수 있는 팁들입니다~
이번엔 RESTful API 테스트하는 방법을 알아보겠습니다.
백앤드를 하시던 프론트앤드를 하시던 RESTful api 테스트를 하시는 일이 생깁니다.
개발자 분들이 보통 많이 쓰는게 포스트맨인데요.
인텔리 j 에서도 RESTful api 를 테스트 할 수 있습니다.
- http 파일 생성
프로젝트 View[Alt+1] 에서 Alt+Insert 누르시면 HTTP Request 가 나옵니다.
파일을 만들어보면..[전 test.http 로 생성했습니다.] 음.. 아무것도 없습니다... 덩그러니...
우선 오른쪽 상단에 보시면 Add request, Add environment file ,Convert..., Examples 이 나옵니다.
여기서 Examples 를 눌러보면
Get Requests 눌러보면..
오른쪽 상단에 빨간박스를 보시면 reader Mode 라고 나오고 파일 수정이 안됩니다.
파일 위치를 보면 아까 위에는 test.http 파일인데 지금은 get-requests.http 파일로 파일명이 다릅니다.
이거는 예제로 보여준것 뿐이고 test.http 에서 만들어야 합니다. [복사 붙여넣기 하셔도 됩니다.]
그럼 다시 test.http 파일로 넘어와서..[Ctrl+e 를 누르면 최근 열었던 파일을 확인 할 수 있습니다. 여기서 test.http 파일을 금방 찾으실수 있을것입니다.]
'GET http://localhost:8080/' 작성하고 Shift+space bar 를 치시면 지금 프로젝트에서 사용할수 있는 RESTful api url 이 목록으로 나옵니다. [이거는 백앤드 spring 만 지원되는거 같은데.. 정확히 확인은 못했습니다...]
[타이핑 하시다가 보면 힌트가 나올껍니다.. 그냥 힌트를 사용해주시면 됩니다.. ]
다 작성하시고 실행[Shift+F10 또는 GET 옆에 빨간박스 안에 버튼]을 해보시면..
이번엔 POST를 해보겠습니다.
그럼 아까 파일로 와서.. 이번엔 다른 방법으로 생성해보겠습니다.
그리고 빨간박스안에 ### 이 같이 생겼습니다.
'###' 는 RESTFul api 의 구분을 짓는겁니다. ### 밑으론 다른 테스트 API를 만든다고 보시며 됩니다.
그럼 템플릿을 토대로..
역시나 실행[Shfit+F10]을 해보시면..
이외에도 parameter body ,file 등도 하실 수 있습니다.
혹시나 file 넣는것도 필요하면 덧글로 남겨주세요~
-Environment file
테스트를 하다보면 공통적인 값을 넣어주거나.. 개발api 와 운영 api 경로를 구분하거나.. 해야 할일이 생깁니다.[저만 그럴수도...]
그때 environment 를 사용하시면 조금 더 편하게 이용할수 있습니다.
Regular 는 보통 파일을 만드는것 같고...
private을 gitignore 를 넣은것처럼 커밋에 제외가 됩니다.[Git 에 파일을 추가 유무를 물어보질 않습니다. Regular 를 만드셨다면 Git에 파일 추가 여부를 물어봅니다.]
Regular 를 만들면..
안에 내용은 json 파일이니 json 형태처럼 등록을 하시면 됩니다.
저는 test 안에 host 를 넣어서 url 을 등록했습니다.
다시 test.http 로 와서..
이젠 실행[Shift+F10]을 하면되는데 하기전에..
저희는 test 로 만들었으니깐...
1번쨰꺼를 선택하시면
이후 부터는 단축키로 실행을 해도 알아서 test environment 를 참조하여 실행이 됩니다.
[위 과정을 안 하셨다면.. 에러가 발생합니다...]
고정으로 사용되는것 혹은 여러 api 에서 공통적으로 사용되는 파라미터를 빼서 사용하면 한결 편하게 테스트를 하실수 있습니다.
- Convert...
마지막으로 Convert 입니다.
몇몇 사이트에서 api 를 재공하면서 curl 로 안내해주는 경우가 있습니다.
curl -i -X GET \
"https://graph.facebook.com/v10.0/{album-id}"
이런식으로..[페이스북꺼를 뺏어왔습니다. ㅎㅎ]
그럼 이걸 인텔리 J에서 테스트 할수 있게 Convert를 해줍니다.
여기서 Convert cURL to HTTP Request 를 클릭하시면..
예제를 하다보니 쉬운거를 하게 되었는데 다른것들도 이렇게 변경이 되니 cURL을 하실수있습니다.
또 우리가 테스트로 만든것도 cURL로 만들수 있습니다.
테스트로 만드신 소스를 선택하시면 노랑전구가 나오는데 노랑전구를 클릭하시면
Convert to cURL and copy to clipboard 를 선택하시면
curl -X POST --location "http://localhost:8080/api/sample/post/test" \
-H "Content-Type: application/json" \
-d "{
\"carModel\": \"현대\",
\"carName\": \"소나타\"
}"
cURL 생성할수 있습니다!
휴.. 적다 보니 엄청 길어졌네요!
오늘은 여기까지입니다.
긴글 읽어주셔서 감사드리고~ 여러분들에게 도움이 되었으면 좋겠습니다!
다음엔 또 다른팁을 가지고 돌아오겠습니다!
댓글
댓글 쓰기