junit assertThat 使用及说明

一、一般匹配符

  • allOf匹配符表明如果接下来的所有条件必须都成立测试才通过,相当于“与”(&&)

assertThat( testedNumber, allOf( greaterThan(5), lessThan(11) ) );

  • anyOf匹配符表明如果接下来的所有条件只要有一个成立则测试通过,相当于“或”(||)

assertThat( testedNumber, anyOf( greaterThan(11), lessThan(5) ) );

  • anything匹配符表明无论什么条件,永远为true

assertThat( testedNumber, anything() );

  • is匹配符表明如果前面待测的object等于后面给出的object,则测试通过

assertThat( testedString, is( "good" ) );

  • not匹配符和is匹配符正好相反,表明如果前面待测的object不等于后面给出的object,则测试通过

assertThat( testedString, not( "good" ) );

二、字符串相关匹配符

  • containsString匹配符表明如果测试的字符串testedString包含子字符串"good"则测试通过

assertThat( testedString, containsString( "good" ) );

  • endsWith匹配符表明如果测试的字符串testedString以子字符串"good"结尾则测试通过

assertThat( testedString, endsWith( "good" ) );

  • startsWith匹配符表明如果测试的字符串testedString以子字符串"good"开始则测试通过

assertThat( testedString, startsWith( "good" ) );

  • equalTo匹配符表明如果测试的testedValue等于expectedValue则测试通过,equalTo可以测试数值之间,字符串之间和对象之间是否相等,相当于Object的equals方法

assertThat( testedValue, equalTo( expectedValue ) );

  • equalToIgnoringCase匹配符表明如果测试的字符串testedString在忽略大小写的情况下等于"good"则测试通过

assertThat( testedString, equalToIgnoringCase( "good" ) );

  • equalToIgnoringWhiteSpace匹配符表明如果测试的字符串testedString在忽略头尾的任意个空格的情况下等于"good"则测试通过,注意:字符串中的空格不能被忽略

assertThat( testedString, equalToIgnoringWhiteSpace( "good" ) );

三、数值相关匹配符

  • closeTo匹配符表明如果所测试的浮点型数testedDouble在10.0±0.5范围之内则测试通过

assertThat( testedDouble, closeTo( 10.0, 0.5 ) );

  • greaterThan匹配符表明如果所测试的数值testedNumber大于11.0则测试通过

assertThat( testedNumber, greaterThan(11.0) );

  • lessThan匹配符表明如果所测试的数值testedNumber小于11.0则测试通过

assertThat( testedNumber, lessThan (11.0) );

  • greaterThanOrEqualTo匹配符表明如果所测试的数值testedNumber大于等于11.0则测试通过

assertThat( testedNumber, greaterThanOrEqualTo (11.0) );

  • lessThanOrEqualTo匹配符表明如果所测试的数值testedNumber小于等于11.0则测试通过

assertThat( testedNumber, lessThanOrEqualTo (11.0) );

四、collection相关匹配符

  • hasEntry匹配符表明如果测试的Map对象mapObject含有一个键值为"key"对应元素值为"value"的Entry项则测试通过

assertThat( mapObject, hasEntry( "key", "value" ) );

  • hasItem匹配符表明如果测试的迭代对象iterableObject含有元素“element”项则测试通过

assertThat( iterableObject, hasItem ( "element" ) );

  • hasKey匹配符表明如果测试的Map对象mapObject含有键值“key”则测试通过

assertThat( mapObject, hasKey ( "key" ) );

  • hasValue匹配符表明如果测试的Map对象mapObject含有元素值“value”则测试通过

assertThat( mapObject, hasValue ( "key" ) );

你可能感兴趣的:(junit assertThat 使用及说明)