Whiteship's Note

assertThat()으로 null 여부 확인하기

모하니?/Coding : 2008. 7. 30. 14:34


JUnit 4.4 전에는 assertNotNull(dao); 이런식으로 확인했었습니다.

그러나 4.4부터 assertThat()을 사용해서 다음과 같이 테스트 할 수 있습니다.
assertThat(dao, is(notNullValue()));

여기서 is를 빼면 어법이 좀 그렇긴 하지만.. 그래도 동작합니다.
assertThat(dao, notNullValue());

처음엔 이렇게 작성했었습니다.
assertThat(dao, is(not(null));

하지만 위에 코드는 안 됩니다. null이 값이 아니기 때문에, 값 비교 하는데 null 때문에 NullPointerException이 발생합니다.

Maven을 사용하고 계시다면..

        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.4</version>
        </dependency>

        <dependency>
            <groupId>org.hamcrest</groupId>
            <artifactId>hamcrest-library</artifactId>
            <version>1.1</version>
        </dependency>

이렇게 라이브러리를 추가해주신 다음에 해야 합니다. static import를 추가해두면 편하겠죠.

import static org.hamcrest.CoreMatchers.*;
import static org.junit.Assert.*;

top

Write a comment.




: 1 : ··· : 176 : 177 : 178 : 179 : 180 : 181 : 182 : 183 : 184 : ··· : 299 :