快速业务通道

JUnit 4.4新特性 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-21
r 和 hamcrest-core-1.1.jar(请参阅 参考资料),并将其加入到工程库中,所有的匹配符都在类 org.hamcrest.Matchers 中定义,要想使用,必须得在代码中 import static org.hamcrest.Matchers.*;。如果使用外部的匹配符,最好就不要再使用 JUnit 4.4 自带的匹配符了,因为这样容易导致匹配符 Matcher 重复定义,编译可能会出错(ambiguous for the type)。 JUnit 4.4 允许使用 Hamcrest 来使用更多的匹配符,这还是 JUnit 第一次允许在自己的工程中使用第三方类。

JUnit 4.4新特性(3)

时间:2011-01-03 丁钦浩

注意:

assertThat 仍然是断言语句,所以要想使用,必须还得 import static org.junit.Assert.*;;

虽然 assertThat 可以代替以前所有的断言语句,但是以前的所有 assert 语句仍然可以继续使用;

清单 5 列举了大部分 assertThat 的使用例子:

清单 5 assertThat 使用举例

//一般匹配符 // allOf匹配符表明如果接下来的所有条件必须都成立测试才通过,相当于“与”(&&) assertThat( testedNumber, allOf( greaterThan(8), lessThan(16) ) ); // anyOf匹配符表明如果接下来的所有条件只要有一个成立则测试通过,相当于“或”(||) assertThat( testedNumber, anyOf( greaterThan(16), lessThan(8) ) ); // anything匹配符表明无论什么条件,永远为true assertThat( testedNumber, anything() ); // is匹配符表明如果前面待测的object等于后面给出的object,则测试通过 assertThat( testedString, is( "developerWorks" ) ); // not匹配符和is匹配符正好相反,表明如果前面待测的object不等于后面给出的object,则测试通过 assertThat( testedString, not( "developerWorks" ) ); //字符串相关匹配符 // containsString匹配符表明如果测试的字符串testedString包含子字符串"developerWorks"则测试通过 assertThat( testedString, containsString( "developerWorks" ) ); // endsWith匹配符表明如果测试的字符串testedString以子字符串"developerWorks"结尾则测试通过 assertThat( testedString, endsWith( "developerWorks" ) ); // startsWith匹配符表明如果测试的字符串testedString以子字符串"developerWorks"开始则测试通过 assertThat( testedString, startsWith( "developerWorks" ) ); // equalTo匹配符表明如果测试的testedValue等于expectedValue则测试通过,equalTo可以测试数值之间,字 //符串之间和对象之间是否相等,相当于Object的equals方法 assertThat( testedValue, equalTo( expectedValue ) ); // equalToIgnoringCase匹配符表明如果测试的字符串testedString在忽略大小写的情况下等于 //"developerWorks"则测试通过 assertThat( testedString, equalToIgnoringCase( "developerWorks" ) ); // equalToIgnoringWhiteSpace匹配符表明如果测试的字符串testedString在忽略头尾的任意个空格的情况下等 //于"developerWorks"则测试通过,注意:字符串中的空格不能被忽略 assertThat( testedString, equalToIgnoringWhiteSpace( "developerWorks" ) ); //数值相关匹配符 // closeTo匹配符表明如果所测试的浮点型数testedDouble在20.0±0.5范围之内则测试通过 assertThat( testedDouble, closeTo( 20.0, 0.5 ) ); // greaterThan匹配符表明如果所测试的数值testedNumber大于16.0则测试通过 assertThat( testedNumber, greaterThan(16.0) ); // lessThan匹配符表明如果所测试的数值testedNumber小于16.0则测试通过 assertT

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号