JUnit软件测试_第1页
JUnit软件测试_第2页
JUnit软件测试_第3页
JUnit软件测试_第4页
JUnit软件测试_第5页
已阅读5页,还剩30页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、蒋刚毅n是 Java语言事实上的标准单元测试库。n真正的优势来自于 JUnit 所采用的思想和技术,而不是框架本身。推动了单元测试、测试先行的编程和测试驱动的开发。nJunit衍生了许多 xUnit 工具,将单元测试的优势应用于各种语言。影响了各种平台和语言上的程序员的测试工作。n为人们提供一个自由讨论项目的地方、氛围、方式。n选择最简单的设计、技术、算法和技巧使客户满意。n任何代码的修改都能快速的得到有价值的反馈。n如果代码有“坏味道”,将其重构。测试是勇气的关键。1.测试方法必须使用注解 org.junit.Test 修饰。2.测试方法必须使用 public void 修饰,而且不能带有任

2、何参数。 绿色的进度条提示我们,测试运行通过了绿色的进度条提示我们,测试运行通过了 单元测试的范围要全面,比如对边界值、正常值、错误值得测试;对代码单元测试的范围要全面,比如对边界值、正常值、错误值得测试;对代码可能出现的问题要全面预测可能出现的问题要全面预测 JUnit 将测试失败的情况分为两种:failure 和 error。Failure 一般由单元测试使用的断言方法判断失败引起,它表示在测试点发现了问题;而 error 则是由代码异常引起,这是测试目的之外的发现,它可能产生于测试代码本身的错误(测试代码也是代码,同样无法保证完全没有缺陷),也可能是被测试代码中的一个隐藏的bug。方法级

3、的方法级的Fixture问题问题:开销太大开销太大n注解 org.junit.Test 中有两个非常有用的参数:expected 和 timeout。n参数 expected 代表测试方法期望抛出指定的异常,如果运行测试并没有抛出这个异常,则 JUnit 会认为这个测试没有通过。这为验证被测试方法在错误的情况下是否会抛出预定的异常提供了便利。n举例来说,方法 supportDBChecker 用于检查用户使用的数据库版本是否在系统的支持的范围之内,如果用户使用了不被支持的数据库版本,则会抛出运行时异常 UnsupportedDBVersionException。测试方法 supportDBCh

4、ecker 在数据库版本不支持时是否会抛出指定异常的单元测试方法大体如下:Test(expected=UnsupportedDBVersionException.class)public void unsupportedDBCheck() 注解 org.junit.Test 的另一个参数 timeout,指定被测试方法被允许运行的最长时间应该是多少,如果测试方法运行时间超过了指定的毫秒数,则JUnit认为测试失败。这个参数对于性能测试有一定的帮助。例如,如果解析一份自定义的 XML 文档花费了多于 1 秒的时间,就需要重新考虑 XML 结构的设计,那单元测试方法可以这样来写:nassertEq

5、uals(String message,Object expected,Object actual)判断是否相等,可以指定输出错误信息。第一个参数是期望值,第二个参数是实际的值。nassertTrue/False(String message,Boolean condition) 判断一个条件是true还是false。nassertNotNull/Null(String message,Object obj)判读一个对象是否非空(非空)。nassertSame/NotSame(String message,Object expected,Object actual)判断两个对象是否指向同一个对象。看内存地址。nfail(String message)失败,可以有消息,也可以没有消息。n200

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论