- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
5.4 JUnit测试 5.4.1 起因 5.4.2 JUnit的概念 5.4.3 JUnit的特性及优点 5.4.4 JUnit下载与安装 5.4.5 JUnit3.8.x测试思想 5.4.6 JUnit3.8.x测试实例 5.4.7 JUnit4的新特性 5.4.1 起因 JUnit测试的起因 提高软件的质量需要撰写测试程序; 经良好设计和规划的测试类的代码不需要那么繁琐和冗长; 通过借助于测试类的编写规范可以得到易于操作的测试,且不随时间变化。 5.4.2 JUnit的概念 JUnit是一个开放源代码的Java测试框架 JUnit的3个设计目标 自动化测试框架 确保代码持久有效 支持测试代码的重用 5.4.3 JUnit的特性及优点 JUnit特性 利用断言assert*来测试实际执行结果是否符合预期结果; 利用TestCase和TestSuite方便地组织和运行测试; 通过文本运行器textui、图形运行器awtui和swingui提供灵活的交互模式。 JUnit的优点 在支持测试方面,JUnit的优点 将测试代码与产品代码分开,提高了软件的可维护性; 针对某个类的测试代码经少量改动之后即可应用于另一个类的测试,简化了测试代码的撰写,提高了测试代码的复用程度; 公开源代码,便于进行二次开发,且便于扩展。 JUnit的优点 就对软件开发与过程的支持而言,JUnit有助于 加快开发速度; 提高软件代码质量; 提升系统的可信赖度。 5.4.4 JUnit下载与安装 JUnit下载与安装 下载安装junit-4.4.jar 设置Path和ClassPath环境变量 5.4.5 JUnit3.8.x测试思想 基于JUnit的单元测试基本步骤 1.创建测试驱动类; 2.创建被测类的对象; 3.展开对被测项的测试,即设计测试用例和对应的测试程序,从方法、状态等方面展开测试; 4.测试完毕释放已经分配的永久性资源; 5.将多个测试用例组织成测试包( Test Suite),必要时需设定测试用例执行的顺序; 6.执行测试; 7.检验并统计测试结果。 JUnit3.8.x使用经验 JUnit3.8.x使用经验 继承junit.framework.TestCase类; 填写setUp()和tearDown()方法; 撰写test***测试方法,并用assert*验证用例的执行情况; 重写suite()方法,利用addTest加入自己的test***测试方法; 以图形或文本方式执行测试。 5.4.6 JUnit3.8.x测试实例 基于JUnit3.8.x进行面向对象单元测试: 案例实践三: MyPoint系列的测试 类MyPoint被用做MyLine的属性 测试分析 test目录下的文件 MyBaseTestListener.java:从junit.framework.TestListener派生的类,用于将测试结果输出到日志文件。 MyPointTestCase.java:对MyPoint的测试驱动类 MyShapeTestCase.java:对MyShape的测试驱动类 MyLineTestCase.java:对MyLine的测试驱动类 MyTriangleTestCase.java:对MyTriangle的测试驱动类 IsoscelesTestCase.java:对Isosceles的测试驱动类 ScaleneTestCase.java:对Scalene的测试驱动类 *_logFile.txt:对应测试驱动类执行过程中生成的日志文件 MyPointTestCase.java MyPointTestCase.java 静态类org.junit.Assert 该类主要包含以下22个方法: ①assertEquals(),8个重载,用来查看对象中存的值是否是期待的值,与字符串比较中使用的equals()方法类似; ②assertFalse()和assertTrue(),各2个重载,用来查看变量是否为false或true,如果assertFalse()查看的变量的值是false则测试成功,如果是true则失败,assertTrue()与之相反; ③assertSame()和assertNotSame(),各2个重载,用来比较两个对象的引用是否相等和不相等,类似于通过“==”和“!=”比较两个对象; ④assertNull()和assertNotNull(),各2个重载,用来查看对象是否为空和不为空; 静态类org.junit.Assert 该类主要包含以下22个方法: ⑤fail (),2个重载,意为失败,用来抛出AssertionError错误。有两个用途: 首先是在测试驱动开发中,由于测试用例都是在被测试的类之前编写,而写成时又不清楚其
文档评论(0)