欢迎来到天天文库
浏览记录
ID:39945683
大小:182.50 KB
页数:34页
时间:2019-07-15
《junit测试工具简介》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第8章JUnit测试工具简介西南石油大学计算机科学学院JUnit概述1使用JUnit编写测试2测试的内容3主要内容西南石油大学计算机科学学院8.1JUnit概述JUnit是一个开源的java测试框架,它是Xuint测试体系架构的一种实现。JUnit最初由ErichGamma和KentBeck所开发。在JUnit单元测试框架的设计时,设定了三个总体目标,第一个是简化测试的编写,这种简化包括测试框架的学习和实际测试单元的编写;第二个是使测试单元保持持久性;第三个则是可以利用既有的测试来编写相关的测试。西南石油大学计算机科学学院8.2使用JUnit编写测试1、构建单元测试测试代码必须要做的
2、事情:●准备测试所需要的各种条件(创建所有必须的对象,分配必要的资源等)●调用要测试的方法●验证被测试方法的行为和期望是否一致●完成后清理各种资源(InternalOnly)(Delivered)西南石油大学计算机科学学院8.2使用JUnit编写测试1、构建单元测试测试代码用一般的方式编写和编译当执行测试代码的时,从来不直接运用产品代码西南石油大学计算机科学学院8.2使用JUnit编写测试2、JUnit的各种断言JUnit提供了一些辅助函数,用于帮助确定某个被测试函数是否工作正常。通常把所有这些函数统称为断言。每一个断言(assert)方法都会记录是否失败了(断言为假)或有错误了(遇
3、到一个意料外的异常)的情况,并通过JUnit的一些类来报告这些结果当一个失败或者错误出现的时候,当前测试方法的执行流程将会被中止,但是(位于同一个测试类中的)其它测试将会继续运行。西南石油大学计算机科学学院8.2使用JUnit编写测试2、JUnit的各种断言assertEqualsassertEquals([Stingmessage],expected,actual)相等性测试expected是期望值(通常都是硬编码的),actual是被测试代码实际产生的值,message是一个可选的消息,如果提供的话,将会在发生错误时报告这个消息。如想用断言来比较浮点数(在Java中是类型为flo
4、at或者double的数),则需指定一个额外的误差参数。assertEquals([Stingmessage],expected,actual,tolerance)西南石油大学计算机科学学院8.2使用JUnit编写测试2、JUnit的各种断言assertNullassertNull([Stingmessage],java.lang.Objectobject)assertNotNull([Stingmessage],java.lang.Objectobject)验证一个给定的对象是否为null(或者为非null),如果答案为否,则将会失败。Message参数是可选的。西南石油大学计算机
5、科学学院8.2使用JUnit编写测试2、JUnit的各种断言assertSameassertSame([Stingmessage],expected,actual)验证expected参数和actual参数所引用的是否为同一个对象,如果不是将会失败。Message参数是可选的assertNotSame([Stingmessage],expected,actual)验证expected参数和actual参数所引用的是否为不同的对象,如相同将会失败。Message参数是可选的西南石油大学计算机科学学院8.2使用JUnit编写测试2、JUnit的各种断言assertTrueassertTr
6、ue([Stingmessage],Booleancondition)验证给定的二元条件是否为真,如果为假将会失败。Message参数是可选的。assertFalse([Stingmessage],Booleancondition)验证给定的二元条件是否为假;如果不是的话(为真),该测试将会失败,message参数是可选的。西南石油大学计算机科学学院8.2使用JUnit编写测试2、JUnit的各种断言FailFail([Stingmessage])将会使测试立即失败,其中message参数是可选的。这种断言通常被用于标记某个不应该被到达的分支西南石油大学计算机科学学院8.2使用JUn
7、it编写测试2、JUnit的各种断言一般而言,一个测试方法包含有多个断言,因为需要验证该方法的多个方面以及内在的多种联系。当一个断言失败的时候,该测试方法将会被中止,从而导致该方法中余下的断言这次就无法执行了,此时只能是在继续测试之前先修复这个失败的测试。依此类推,不断地修复一个又一个的测试,沿着这条路径慢慢前进。西南石油大学计算机科学学院8.2使用JUnit编写测试3、JUnit框架importjunint.framework.*;publicclass
此文档下载收益归作者所有