lychbeyond 发表于 2010-11-24 16:32:24

assertThat用法疑问?

我安装了junit4.8.1版本 并导入了hamcrest-library-1.3.0RC2.jar,hamcrest-core-1.3.0RC2.jar
我程序开头引用
import org.hamcrest.Matcher;
import static org.junit.Assert.*;




@Test public void SpringAllTest(){

//测试spring数据库连接池
String actualUsername = basicDataSource.getUsername();
//assertEquals("devloper",actualUsername);//测试能通过,但我改成下句形式
assertThat( "devloper", equalTo( actualUsername ) ); //就不能测试通过

}
//由于上面的测试程序提示,不识别equalTo方法,于是根据下面就自动创建一个
private Matcher<String> equalTo(String actualUsername) {
// TODO Auto-generated method stub
return null;
}


运行出现错误提示:

java.lang.NullPointerException
at org.junit.Assert.assertThat(Assert.java:770)
at org.junit.Assert.assertThat(Assert.java:736)


我不明白为什么assertThat()不能识别equalTo,为什么assertEquals运行测试正确,而assertThat()提示空指针错误


assertThat(3,is(1+2)); 这个也不能运行通过
private Matcher<Integer> is(int i) {
                // TODO Auto-generated method stub
                return null;
      }
是测试环境没有配置好吗?
页: [1]
查看完整版本: assertThat用法疑问?