Search
Duplicate

회원가입 테스트코드 수정

Tags
테스트
Date
Tags 2
Junit Test
URL
비고
앞으로 유저 늘릴 때 이 테스트 코드 사용하면 됩니당
사람
무엇을 기준으로 회원을 찾을것인가?
이메일은 너무 길다!
아이디도 좋지만 아이디와 닉네임 둘 다 중복되면 어떡하나?
결론
아이디를 닉네임 + #4자리 랜덤숫자 로 만들자!
게임에서 얻어온 아이디어이다. 대략 이런식으로 구성하겠다는 소리.
이렇게 변경하면, 로그인 후 개인의 방으로 이동하게 되는데 url 에 사용하기도 편할것 같고,,? (아니면 금방 엎으면 되니까..) 이런저런 이유로 변경하게 되었다.
package com.team.project2; import com.team.project2.user.UserMapper; import com.team.project2.user.UserVO; import org.junit.jupiter.api.DisplayName; import org.junit.jupiter.api.Test; import org.mybatis.spring.boot.test.autoconfigure.MybatisTest; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.autoconfigure.jdbc.AutoConfigureTestDatabase; import org.springframework.test.annotation.Rollback; import java.util.Random; @MybatisTest @Rollback(false) @AutoConfigureTestDatabase(replace = AutoConfigureTestDatabase.Replace.NONE) public class UserTest { @Autowired private UserMapper userMapper; @Test @DisplayName("SignUp Test") public void signUpTest() throws Exception { // 유저 코드 생성 Random random = new Random(); StringBuilder sb = new StringBuilder(); String id; for (int i = 0; i < 4; i++) { String randomNum = Integer.toString(random.nextInt(10)); sb.append(randomNum); } id = sb.toString(); UserVO userVO = new UserVO(); userVO.setId("nickname1#" + id); userVO.setPassword("123qwe!@#QWE"); userVO.setEmail("user1@study.com"); userVO.setNickname("nickname1"); userVO.setTitle("lv.1"); userVO.setWithdraw(false); userMapper.insertUser(userVO); System.out.println("회원가입이 완료되었습니다."); } }
Java
복사
결과
아이디 찾거나 할때 이메일을 기준으로 하면 될것 같습니당 (중복검사 하니까)
닉네임의 경우 중복이 가능! (구분은 랜덤코드로)
똑같은 닉네임 하고 싶을수도.. 있잖아요..?