老师上课以及checkRep中应该是一系列的assert,发现自己关于assert掌握甚少,前面很多checkRep都返回 Boolean,所以好好学习断言相关知识。
assert最简单的用法是assert expression,如果后面的expression为假,会直接AssertError
除此之外还有
其中 AssertThat有很多用法:
/ allOf: 所有条件都必须满足,相当于&&
assertThat("myname", allOf(startsWith("my"), containsString("name")));
// anyOf: 其中一个满足就通过, 相当于||
assertThat("myname", anyOf(startsWith("na"), containsString("name")));
// both: &&
assertThat("myname", both(containsString("my")).and(containsString("me")));
// either: 两者之一
assertThat("myname", either(containsString("my")).or(containsString("you")));
还有就是lab2中提到可以通过设置参数,设置是否执行这些assert
参数-da(默认)使程序不进行断言判断
-ea 进行断言