为了理解JUnit,我编写了以下代码。特别是,我对assertThat() - 方法感兴趣。
package test;
public class Equals {
private String x ;
public Equals(String a){
this.x = a;
}
public Equals equals(Equals x ){
return x;
}
}
然后我创建一个测试类来测试equals() - 方法。
package test;
import static org.junit.Assert.*;
import org.hamcrest.Matcher;
import org.junit.Test;
public class EqualsTest {
@Test
public void testEquals() {
Equals t1 = new Equals("test");
assertThat(t1, t1.equals("test"));
}
}
Eclipse使用red强调assertThat并建议:创建方法assertThat(Equals,boolean)。
其他断言方法(如assertEquals()等)非常简单,但这个对我来说并不那么直观。我不明白这个。请帮忙。
最好的问候,
答案 0 :(得分:1)
你必须在这个方法中使用一些匹配器,而不是布尔值。
例如,您可以将is
匹配器用于您的目的:
assertThat("this string", is("this string"));
看看这个:http://tutorials.jenkov.com/java-unit-testing/matchers.html
答案 1 :(得分:0)
assertThat
是Hamcrest断言库的一部分。请查看Hamcrest的网站:http://hamcrest.org/JavaHamcrest/