코틀린 수업 Day.2

hyunji·2023년 2월 10일
0

grep.app

  • 변수명, 메소드 명 확인해볼 수 있는 사이트

상수 선언

동반객체 VS 최상위 수준

  • 자신만의 기준을 토대로 상수를 어떤걸로 선언할 지 고르기

앞으로 오류 날리기는 require() or check() 사용

  • require() : 값을 체크 (IllegalArgumentException)
  • check() : 상태 체크 (IllegalStateException)

함수 짤 때

  • 하위호환성을 보장하기
  • 단위테스트하기 편하도록 구성
  • 테스트하기 어려운 부분은 인자로 받아올 수 있도록 구성

랜덤값을 테스트 할 때

  • 클래스를 open해서 열어줌
  • 해당 랜덤값 생성 함수도 open 해서 열어줌

    open : 상속가능한 클래스로 만들어줌

  • TestCar() 클래스를 만든 후 Car()클래스를 상속받아 테스트 함
@Test

or

@ValueSource(ints = [4,5,6,7,8])
@ParameterizedTest
fun `4 이상이면 정지`(){  
val car = object : Car('jason')
	override fun generateRandomNumber(): Int{
    return 4
    }
}

  • ParameterizedTest를 테스트 할 때 argument가 잘 보이도록 하기 위해서

(예시)숫자가 {0} 이라면 자동차는 이동하지 않는다.

0개의 댓글