- 우테코에서 제공하는 BaseBall 콘솔 게임 미션입니다
- 미션을 바탕으로 TDD 학습을 목표로 공부하였습니다
- 컴퓨터가 랜덤숫자를 생성한다
- 랜덤숫자는 1~9의 3자리 숫자다
- 랜덤숫자는 모두 다른 숫자여야 한다
- 사용자가 숫자를 입력한다
- 입력한 숫자는 1~9의 3자리 숫자여야 한다
- 입력한 숫자는 모두 다른 숫자여야 한다
- 컴퓨터 숫자와 사용자 숫자를 비교한다
- 스트라이크 볼 낫싱에 대한 상황에 따라 출력한다
- 컴퓨터가 난수를 생성하도록 한다
- 사용자가 숫자를 입력하도록 한다
- Result를 사용하여 컴퓨터 숫자와 사용자 숫자를 비교한다
- OutputView를 사용하여 결과를 출력한다
- 재시작을 원하는 경우 1을 입력받아 재시작한다
- 종료를 원하는 경우 2를 입력받아 종료한다
- 에러 발생시 IllegalArgumentException()를 호출한다
-
난수 생성같은 경우 여러번 실행시켜서 오차가 있는지 확인해야할때 테스트 코드안에서 반복문 어떻게 사용할까?
-
기능에 대한 테스트?
- test 코드로 먼저 구현하고!
-
에러 던지는 상황 캐치는 어떻게?
- assertion.assertThrows()로 같은 Error 클래스인지 확인 가능!
-
책임 나눌때 어떻게 해야함? (클래스 분할하고 싶을때)
- 테스트 코드로 먼저 작성한 뒤 돌아가면 리팩토링 진행
-
test 하고 싶은 예시들이 여러개이고 입력시켜주고 싶을 경우 어떻게?
@ParameterizedTest, @MethodSource()
- 아 파라미터로 원하는 값을 넘겨주는 형식!!! 괜찮네
- 참고
-
System.in 에 값을 넣으면 test 같이 돌릴때 문제 생김