断言:预期与实际结果的判断 Assert
JUnit4.4引入了新的断言语法‘assertThat’,使得程序员在编写单元测试的assert语句时,可以有更强的可读性,而且更加灵活。
基本语法:
assertThat([value],[matcher statement]);
value是接下来想要测试的变量值,matcher statement是使用Hamcrest匹配符来表达对前面变量所期望的值的声明,如果value和matcher statement所表达的期望值相符,测试成功,否则失败
建议:使用时静态导入,减少测试代码编写的工作量,
如: import static org.junit.Assert.*;import static org.hamcrest.Matchers.*;
优点
相比较其他断言语句,assertThat具有如下优点:
1.assertThat可以替代所有assert语句,使用编写测试用例变的简单,代码风格变得统一,测试代码也更容易维护
2.使用了类似的“主谓宾”的语法模式,代码易读
// JUnit 4.4 以前的“主谓宾”结构语句
assertEquals(3 , x);
// JUnit 4.4
assertThat(x , is(3));
3.可以和Matcher匹配符联合起来达到更多目的,使用灵活
// 想要判断某个字符串s是否含有个子字符串“developer”或“Worker