본문 바로가기
참고자료

Swagger vs Spring Rest Docs

by devwari 2019. 1. 23.

' 마스터링 스프링 클라우드'를 읽다가 API 문서 자동화에 대한 글을 보고 해당 포스트를 작성하게되었습니다.


현재 제가 진행하는 프로젝트는

  1. Postman으로 파라미터 예시를 작성해 API 테스트 수행
  2. Confluence에 API 문서를 직접 작성

!! 여기서 문제는 !!

  1. Postman 무료버전은 공유 한도에 제한이 있음
  2. Confluence에 API 문서를 사람이 직접 작성하다보니 휴먼 에러는 쉽게 발생
  3. API가 수정되었을 때 Postman과 Confluence애 직접 변경해야함. 실제 API와 싱크가 안맞는 경우 빈번히 발생...

 - Swagger

* 장점

    1. API 테스트를 해볼 수 있는 화면 제공
    2. 적용이 쉬움

* 단점

    1. 제품 코드에 어노테이션이 추가되어야함
    2. 제품코드와 동기화 안될 수 있음


!! 코드 예시 !!


!! 적용 결과 예시 !!


- Spring Rest Docs

* 장점

    1. 테스트 코드 기반으로 문서가 작성되기 때문에 문서와 실제 코드의 일치성이 높음
    2. 테스트 코드로 문서가 표현되기 때문에 실제 코드에 어떠한 코드 추가도 필요 없음
    3. 테스트가 성공해야 문서 작성됨

* 단점

    1. 적용하기 어려움


!! 코드 예시 !!


!! 적용 결과 예시 !!