首页 > 其他 > 详细

窥探EasyMock(1)基础使用篇

时间:2014-07-11 21:56:59      阅读:490      评论:0      收藏:0      [点我收藏+]

EasyMock的应用分为5步:

 

1. 使用 EasyMock 生成 Mock 对象;

 

 

Java代码  bubuko.com,布布扣
  1. SomeInterface mockObj = createMock(SomeInterface.class);  

 

 

    如果想对一个类(而非接口)生成mock对象,需要EasyMock Class Extension

 

    如果是一个相对复杂的测试用例,需要对多个接口生成mock对象,使用MockControl来管理:

 

 

Java代码  bubuko.com,布布扣
  1. IMocksControl control = createControl();  
  2. SomeInterface mockObj = control.createMock(SomeInterface.class);  
  3. AnotherInterface mockAnotherObj = control.createMock(AnotherInterface.class);  

 

 

 

2. 设定 Mock 对象的预期行为和输出;

 

 

Java代码  bubuko.com,布布扣
  1. expect(mockObj.someAction(1)).andReturn("one");  

 

 

    如果是一个返回void的方法调用:

 

 

Java代码  bubuko.com,布布扣
  1. mockObj.noReturnValueAction();  
  2. expectLastCall();   // 最新版本的EasyMock可以忽略此句  

 

 


3. 将 Mock 对象切换到 Replay 状态;

 

 

Java代码  bubuko.com,布布扣
  1. replay(mockObj);  

 

 

    对于使用control来管理的情况:

 

 

Java代码  bubuko.com,布布扣
  1. control.replay();  

 


4. 调用 Mock 对象方法进行单元测试;

 

 

Java代码  bubuko.com,布布扣
  1. fakeInvoke(mockObj);  

 


5. 对 Mock 对象的行为进行验证

 

 

Java代码  bubuko.com,布布扣
  1. verify(mockObj);  

 

 

    对于使用control来管理的情况:

 

 

Java代码  bubuko.com,布布扣
  1. control.verify();  

 

窥探EasyMock(1)基础使用篇,布布扣,bubuko.com

窥探EasyMock(1)基础使用篇

原文:http://www.cnblogs.com/heidsoft/p/3833202.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!