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" ) );

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,259评论 19 139
  • 第5章 引用类型(返回首页) 本章内容 使用对象 创建并操作数组 理解基本的JavaScript类型 使用基本类型...
    大学一百阅读 3,281评论 0 4
  • 关于 Swift 重要这个文档所包含的准备信息, 是关于开发的 API 和技术的。这个信息可能会改变, 根据这个文...
    无沣阅读 4,444评论 1 27
  • 好像每个人都能从口音里找到家乡的亲切
    b379ea924164阅读 79评论 0 0
  • 媳妇今天我觉得状态不是很好,每次吃好东西都要吐上几波,我这两天状态也不是很好,从昨天开始就嗓子疼,感觉是上火了慢慢...
    秋景001阅读 130评论 0 0