Step3-kakao-tech-campus / Team3_BE

[카테캠 1기] 번개 지향 볼링 모집 커뮤니티 "번개볼링"의 백엔드 서버입니다.
2 stars 4 forks source link

swagger UI를 통한 api 문서 배포 #86

Closed jagaldol closed 11 months ago

jagaldol commented 11 months ago

Description

통합 테스트를 작성하며, api 문서 또한 한번에 진행하는게 나을 거라는 판단을 하였습니다.

Swagger

open api3를 사용한 swagger의 경우, 테스트 코드가 아닌 main 코드에 api 문서를 위한 코드가 추가되어 소스코드가 지저분해집니다.

RestDocs

restDocs의 경우, 테스트코드 기반으로 만들어지며, 따라서 api 문서에 대한 코드가 각 테스트에 달려있어 메인 소스코드와 분리시킬 수 있습니다.

하지만, restDocs의 경우 adoc를 추가적으로 만들어서 추가작업이 필요하며 swagger와 다르게 직접 api call을 해볼 수도 없습니다. 또한, ui가 이쁘지도 않습니다.

대안 - restdocs-api-spec

Spring Rest Docs의 테스트코드를 활용해 OpenAPI(Swagger 3.0)의 결과를 만들어주는 라이브러리입니다.

이를 사용하여 restDocs처럼 테스트코드를 활용해 api 문서를 생성하되, swagger ui로 생성하게 할것입니다.

Tasks

References