API와 문서와 Mock 서버

less than 1 minute read

API를 만들면서 Swagger(OpenAPI3) 문서를 만들다가 생각했다

이걸 왜 만들고 있을까

(구) Front - API
=>
(신) Front - MOCK - API

  1. API 인터페이스와 모델만 정의하고 프론트 작업과 백엔드 작업을 동시 시작 가능
  2. 프론트 개발시 API 문서와 테스트를 붙이면서 개발 가능
  3. 백엔드 작업오류로 화면에서 오류가 나지 않음
  4. 정의된 규격대로 백엔드 테스트 API가 응답을 하는지 확인가능
  5. DEV 에서만 MOCK이 동작하고 REAL에서는 MOCK을 제거
  6. 같은 레이어에 LoadBalancer, GraphQL 등을 넣어줄 수 있을까
  • https://openapi.tools/
  • https://github.com/getkin/kin-openapi
  • https://github.com/muonsoft/openapi-mock
  • https://stoplight.io/mocking/
  • https://www.mock-server.com/
  • https://github.com/mock-server/mockserver
  • http://wiremock.org/
  • https://mockoon.com/
  • mkckaroo.com
  • faker - python, ruby, php
  • faker.js
  • github.com/Joshmoody/mock-data

조건

  1. API를 DSL로 모델 정의
  2. 개발시 MockServer - 응답머신 daemon서버, UnitTest서버
  3. 개발시 MockClient - Load 테스트
  4. Controller 레이어 자동화 Server레이어 연결 호출 또는 코드 생성
  5. DSL로 테스트 호출 - ex) 로그인 - 토큰받기 - 글쓰기 - 아이디 받기 - 글읽기 - 댓글쓰기 - 글삭제 - 탈퇴
  6. 운영시 Proxy, LB, GraphQL, GW, 인증 등등 역할

Tags: ,

Updated: