배 지원 closed issue #4: Login,Join TestCase at 배 지원 / finalproject-baejiwon

배 지원
2023-01-12T07:13:36Z

Login Join TestCase add(회원가입,로그인 TDD 추가)

1. 목표

1. controller / 2. service로 나눠서 테스트를 진행해야 함.

1. 성공, 2. 실패 테스트 케이스를 모두 통과하는 실제 코드 작성.

Exception 처리는 enum Error코드에 작성 후 호출 해서 사용

실패의 경우 enum값의 errorCode로처리하기

when(어떤 상황일 때)를 각각 설계해보고, Test case에 따라 예상되는 결과값을 작성해주기

Controller, Service 두 클래스의 테스트 코드 작성하기

2. 회원가입

종류 | 성공 | 실패

Controller

회원가입 성공

- 가입할 userName, password가 입력되고 service로 요청을 보내고, User 클래스가 만들어집니다.
- /api/v1/users/join 으로 post 요청을 보낸다.
- 요청한 결과로 OK, 즉 200이 반환된다.

회원가입 시 기존에 가입된 userName이 있는 경우

- 가입할 userName, password가 입력되고 service로 요청을 보내면 사전에 정의된 DUPLICATED_USER_NAME error를 던집니다.
- /api/v1/users/join 으로 post 요청을 보냅니다.
- 정의한 ErrorCode 중, DUPLICATED_USER_NAME를 반환합니다.

Service | 없음 | 없음

3. 로그인

종류 | 성공 | 실패

Controller

로그인 성공

- 가입할 userName, password가 있고, service로 요청을 보내면 임의로 정의한 토큰이 나온다.
- /api/v1/users/login 으로 post 요청을 보낸다.
- 해당 요청 결과로 OK, 즉 200이 반환된다.

로그인 실패 : 입력한 password 틀린 경우

- 가입할 userName, password가 주어지고 service로 요청을 보내는 경우, 사전에 정의한 INVALID_PASSWORD 에러를 반환하도록 한다.
- /api/v1/users/login 으로 post 요청을 보낸다.
- 해당 요청 시 정의한 ErrorCode 중, INVALID_PASSWORD를 반환한다.

로그인 실패 : 회원 가입 된 userName 없는 경우
- 가입할 userName, password가 있고 service로 요청을 보낼 때, 결과는 사전에 정의한 USERNAME_NOT_FOUND 에러를 반환하도록 한다.
- /api/v1/users/login 으로 post 요청을 보낸다.
- 해당 요청 시 정의한 ErrorCode 중, USERNAME_NOT_FOUND를 반환한다.

Service | 없음 | 없음