세션5. API 설계

1. 첫 번째 API(Application Programming Interface) 설계

우리가 만들고자 하는 서비스 아키텍처는 다음과 같다. (우리는 전자 상거래 플랫폼 API 만 담당한다)

첫 번째 API

  • 판매자 회원 가입 기능을 제공한다.

  • 판매자는 이메일 주소, 사용자이름, 비밀번호를 사용해 가입한다.

판매자 회원 가입 정책

  • 이메일 주소는 유일해야 한다.

  • 사용자이름은 유일해야 한다.

  • 사용자이름은 3자 이상의 영문자, 숫자, 하이픈, 밑줄 문자로 구성되어야 한다.

  • 비밀번호는 8자 이상의 문자로 구성되어야 한다.

판매자 회원 가입 API 테스트 시나리오 목록

  • 올바르게 요청하면 204 No Content 상태코드를 반환한다.

  • email 속성이 지정되지 않으면 400 Bad Request 상태코드를 반환한다.

  • email 속성이 올바른 형식을 따르지 않으면 400 Bad Request 상태코드를 반환한다.

  • username 속성이 지정되지 않으면 400 Bad Request 상태코드를 반환한다.

  • username 속성이 올바른 형식을 따르지 않으면 400 Bad Request 상태코드를 반환한다.

  • password 속성이 지정되지 않으면 400 Bad Request 상태코드를 반환한다.

  • password 속성이 올바른 형식을 따르지 않으면 400 Bad Request 상태코드를 반환한다.

  • email 속성에 이미 존재하는 이메일 주소가 지정되면 400 Bad Request 상태코드를 반환한다.

  • username 속성에 이미 존재하는 사용자이름이 지정되면 400 Bad Request 상태코드를 반환한다.

  • 비밀번호를 올바르게 암호화한다.

2. API 설계 문서화

3. 수동 API 실행 명령

4. 정리

  • 여기서 중요한 시사점은 아직 코드는 한줄도 적지 않았다는 것이다.

  • API 관련 문서화 & HTTP 인터페이스에 대한 설계를 진행했다.

  • 여기서 작성한 테스트 시나리오를 기반으로 테스트 코드를 만들고 + 실제 서비스 코드를 만들 것이다.

  • 때문에, 가장 처음 프로세스인 테스트 시나리오의 단단함의 시스템 결과의 단단함과 직결된다고 볼 수 있다.

Last updated