easymock 图片_EasyMock的使用
1.Mock 方法是单元测试中常见的一种技术,它的主要作用是模拟一些在应用中不容易构造或者比较复杂的对象,从而把测试与测试边界以外的对象隔离开。同时也可以当调用别人的模块,而该模块又没有实现时(只提供接口),我们可以在独立的环境中测试自己的模块逻辑。
2.使用前的准备,下载所需的jar包:easymock-3.0.jar(或以上版本),junit-4.4.jar,cglib-nodep-2.1_3.jar
3.使用方法较简单。主要有以下步骤:
*•使用 EasyMock 生成 Mock 对象;
*•设定 Mock 对象的预期行为和输出;
*•将 Mock 对象切换到 Replay 状态;
*•调用 Mock 对象方法进行单元测试;
*•对 Mock 对象的行为进行验证。
测试实例:假如我有一个IStudent接口类和StudentApplication类,StudentApplication类中用到了IStudent中的没实现的方法,而我想测试StudentApplication,这时用EasyMock构造一个IStudent的Mock对象,并给要用到的的未实现的方法设定已知返回值。
code:
1 public interface IStudent {
2 public String doMethod1();
3 public String doMethod2();
4 public String doMethod3();
5
6 }
1 public class StudentApplication {
2 IStudent student=null;
3 public StudentApplication(){
4
5 }
6
7 public String doMethod(){
8 String str1=student.doMethod1();
9 String str2=student.doMethod2();
10 String str3=student.doMethod3();
11 return str1+str2+str3;
12 }
13
14 public IStudent getStudent() {
15 return student;
16 }
17
18 public void setStudent(IStudent student) {
19 this.student = student;
20 }
21
22
23
24 }
1 import main.IStudent;
2 import main.StudentApplication;
3
4 import org.easymock.EasyMock;
5 import org.junit.Assert;
6 import org.junit.Test;
7
8
9 public class testStudentApplication {
10 IStudent student;
11 StudentApplication application;
12 @Test
13 public void testdoMethod(){
14 //•使用 EasyMock 生成 Mock 对象;
15 student=EasyMock.createMock(IStudent.class);
16 //设定 Mock 对象的预期行为和输出
17 EasyMock.expect(student.doMethod1()).andReturn("a").times(1);
18 EasyMock.expect(student.doMethod2()).andReturn("b").times(1);
19 EasyMock.expect(student.doMethod3()).andReturn("c").times(1);
20 //将 Mock 对象切换到 Replay 状态
21 EasyMock.replay(student);
22 //调用 Mock 对象方法进行单元测试
23 application=new StudentApplication();
24 application.setStudent(student);
25 String getStr=application.doMethod();
26 //对 Mock 对象的行为进行验证
27 String cstr="abc";//正确的字符串
28 Assert.assertEquals(getStr, cstr);
29 EasyMock.verify(student);
30
31 }
32
33 }
easymock 图片_EasyMock的使用相关推荐
- easymock 图片_easy-mock的使用
上一节我们讲了如何使用mockjs来生成模拟数据,这一节我们来介绍另外一个实用的mock工具 - easy-mock,它是一个简单.高效.可视化的在线mock工具.相对于我们上节的 mockjs主要用 ...
- easymock 图片_EasyMock使用总结
最重要的事说在前面:遇到一个你不熟悉的知识,一定要去官网仔仔细细的看官方文档!一定要仔仔细细!一定要!(尔康鼻孔脸..) 正篇: 一.使用 首先,当然是添加依赖,有人用maven,有人用ant或者ma ...
- easymock 图片_用easymock来mock数据
用线上的平台去mock数据: easymock. rapapi阿里的.功能更强大些,用起来更复杂. 搜索easymock,进入页面. 还是写那个网易云音乐作为演示. 注册或登录账号,然后创建项目. 点 ...
- easymock教程_EasyMock教程–入门
easymock教程 在本文中,我将向您展示EasyMock是什么,以及如何使用它来测试Java应用程序. 为此,我将创建一个简单的Portfolio应用程序,并使用JUnit&EasyMoc ...
- easymock 图片_数据模拟神器 easy-mock 正式开源
开源公告 由大搜车无线团队出品的 easy-mock 在线数据模拟服务上线至今已经有几个月时间了,近期网站刚更新了焕然一新的 2.0 版本,与此同时,我们还带来一个更重磅的消息: 今天正式将整个服务的 ...
- easymock参数_EasyMock捕获参数
easymock参数 Sometimes we want to stub behaviors for any input arguments, so we use argument matchers. ...
- easymock参数_EasyMock参数匹配器
easymock参数 EasyMock argument matchers allow us to provide the flexible argument for matching when st ...
- easymock教程_EasyMock教程
easymock教程 EasyMock is a java based mocking framework, which is used in conjunction with other unit ...
- easymock 图片_如何使用EasyMock?
在前后端分离的概念中,前端脱离与后端工作,在对好接口之后,以及后端没有假数据的情况下,可以先采用折衷的办法来请求假数据,这就有了Mock.js,可以随机生成数据,拦截ajax请求.Easy Mock ...
最新文章
- NFS挂载的问题svc: failed to register lockdv1 RPC service
- 邮件防伪SPF,反垃圾邮件
- 设计模式---命令模式
- 产品经理十八章:产品创新能力(二)
- PHP代码优化的细节
- 学位论文盲审被卡,或直接被毙,问题主要出在这几条!
- MATLAB信号处理之信号的积分和微分
- vnc安装linux教程,Centos7安装配置vncserver详细教程
- JSON对象超详细讲解|对象、循环对象、嵌套对象、修改和删除对象属性
- 用CSS美化表格【前端知识】
- 常用USB芯片介绍(转串口、SPI 、单片机读写U盘)
- unity 回车_Unity InputField空格引起排版错误和回车换行
- 【8086汇编】DOS系统中 edit 文本编辑器详解
- PMP-PMBOK-培训(7)Initiating a Project and Preparing the Project Plan
- Matlab绘图------特殊图形------直方图
- system information
- 综合练习Java算法
- Java SE8 流 最全总结
- educoder 5-4Python计算思维训练——数组进阶之线性代数(答案)
- 曙光超算平台操作之深度学习
热门文章
- 布线改造之家居布线篇
- 5,000名智利商家现接受加密货币支付
- 全球与中国微生物农药市场深度研究分析报告
- Es搜索引擎概述和语句案例
- 图数据库-Neo4j
- ADP124ARHZ-1.8-R7 5.5 V输入、500 mA、低静态电流、CMOS线性调节器,31种固定输出电压选项
- lpc43xx双核处理器之双核通信
- 【调剂】211河北工业大学招收调剂研究生(学籍在河工大,课题研究在中科院自动化所)...
- mix1 android n,MIX - 指尖的数字暗房 - Android 应用 - 【最美应用】
- 交通工具类Vehicle