下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第第页软件测试之EasyMock使用方法与原理剖析软件测试之EasyMock使用方法与原理剖析
发表于:2023-04-08来源::点击数:标签:软件测试EasyMock剖析原理
EasyMock是一套通过简单的方法对于指定的接口或类生成Mock对象的类库,它能利用对接口或类的模拟来辅助单元测试。本文将对EasyMock的功能和原理进行介绍,并通过示例来说明如何使用EasyMock进行单元测试。Mock方法是单元测试中常见的一种技术,它
EasyMock是一套通过简单的方法对于指定的接口或类生成Mock对象的类库,它能利用对接口或类的模拟来辅助单元测试。本文将对EasyMock的功能和原理进行介绍,并通过示例来说明如何使用EasyMock进行单元测试。Mock方法是单元测试中常见的一种技术,它的主要作用是模拟一些在应用中不容易构造或者比较复杂的对象,从而把测试与测试边界以外的对象隔离开。
编写自定义的Mock对象需要额外的编码工作,同时也可能引入错误。EasyMock提供了根据指定接口动态构建Mock对象的方法,避免了手工编写Mock对象。本文将向您展示如何使用EasyMock进行单元测试,并对EasyMock的原理进行分析。
1.Mock对象与EasyMock简介
单元测试与Mock方法
单元测试是对应用中的某一个模块的功能进行验证。在单元测试中,我们常遇到的问题是应用中其它的协同模块尚未开发完成,或者被测试模块需要和一些不容易构造、比较复杂的对象进行交互。另外,由于不能肯定其它模块的正确性,我们也无法确定测试中发现的问题是由哪个模块引起的。
Mock对象能够模拟其它协同模块的行为,被测试模块通过与Mock对象协作,可以获得一个孤立的测试环境。此外,使用Mock对象还可以模拟在应用中不容易构造(如HttpServletRequest必须在Servlet容器中才能构造出来)和比较复杂的对象(如JDBC中的ResultSet对象),从而使测试顺利进行。
EasyMock简介
手动的构造Mock对象会给开发人员带来额外的编码量,而且这些为创建Mock对象而编写的代码很有可能引入错误。目前,有许多开源项目对动态构建Mock对象提供了支持,这些项目能够根据现有的接口或类动态生成,这样不仅能避免额外的编码工作,同时也降低了引入错误的可能。
EasyMock是一套用于通过简单的方法对于给定的接口生成Mock对象的类库。它提供对接口的模拟,能够通过录制、回放、检查三步来完成大体的测试过程,可以验证方法的调用种类、次数、顺序,可以令Mock对象返回指定的值或抛出指定异常。通过EasyMock,我们可以方便的构造Mock对象从而使单元测试顺利进行。
安装EasyMock
EasyMock是采用MITlicense的一个开源项目,您可以在Sourceforge上下载到相关的zip文件。目前您可以下载的EasyMock最新版本是2.3,它需要运行在Java5.0平台上。如果您的应用运行在Java1.3或1.4平台上,您可以选择EasyMock1.2。在解压缩zip包后,您可以找到easymock.jar这个文件。如果您使用Eclipse作为IDE,把easymock.jar添加到项目的Libraries里就可以使用了(如下图所示)。此外,由于我们的测试用例运行在JUnit环境中,因此您还需要JUnit.jar(版本3.8.1以上)。
图1:Eclipse项目中的Libraries
2.使用EasyMock进行单元测试
通过EasyMock,我们可以为指定的接口动态的创建Mock对象,并利用Mock对象来模拟协同模块或是领域对象,从而使单元测试顺利进行。这个过程大致可以划分为以下几个步骤:
使用EasyMock生成Mock对象;设定Mock对象的预期行为和输出;将Mock对象切换到Replay状态;调用Mock对象方法进行单元测试;对Mock对象的行为进行验证。接下来,我们将对以上的几个步骤逐一进行说明。除了以上的基本步骤外,Easy
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年高考语文复习知识清单第2章文学类文本阅读(一)小说专题07写小说文学短评(学生版+解析)
- 各种培训课件教学课件
- 二年级数学计算题专项练习1000题汇编集锦
- 肉鸭采购合同(2篇)
- 望庐山课件教学课件
- 南京工业大学浦江学院《实验艺术》2021-2022学年第一学期期末试卷
- 钢结构施工组织设计【超完美版】
- 多细胞生物体说课稿
- 《长方形的面积》说课稿
- 《小数的加减法》说课稿
- 10kV线路损耗计算
- 群文阅读《父母的爱》
- 第九套广播体操动作要领及图解
- 看图写话二年级公开课已修改版
- 安徽省淮北市地方婚礼流程资料
- 附件3-4欧曼金融服务经销商融资业务介绍
- 中医骨伤科学9肩周炎上肢伤筋
- 五年级分数乘法口算练习
- 客户服务管理七大原则
- 斜井常闭式防跑车装置设计说明书
- 购买文件登记表.doc
评论
0/150
提交评论