특정 변수 값을 반드시 보장하기 위한 테스트 방법을 소개한다.


1. if와 IllegalArgumentException를 많이 사용한다.


@Test

public void test() {

int number = -1;

    if (number <= 0) {

      throw new IllegalArgumentException("must be positive: " + number);

    }

}


//결과

//java.lang.IllegalArgumentException: must be positive: -1




2. assert 사용

c, c++을 썼던 아저씨 세대들이 자주 사용하는 패턴이다. -ea, -da를 사용하여 assert를 테스트한다. 


int number = -1;

assert number > 0;




3. 1 번처럼 동일하게 쓰되 Guava의 Preconditions 클래스의 사용


http://guava-libraries.googlecode.com/svn-history/r14/trunk/javadoc/com/google/common/base/Preconditions.html



@Test

public void test() {

int number = -1;

Preconditions.checkArgument(number > 0, "must be positive: %s", number);

}


//결과

//java.lang.IllegalArgumentException: must be positive: -1



Posted by '김용환'
,