EasyMock的应用分为5步:
1. 使用 EasyMock 生成 Mock 对象;
Java代码
- SomeInterface mockObj = createMock(SomeInterface.class);
如果想对一个类(而非接口)生成mock对象,需要EasyMock Class Extension
如果是一个相对复杂的测试用例,需要对多个接口生成mock对象,使用MockControl来管理:
Java代码
- IMocksControl control = createControl();
- SomeInterface mockObj = control.createMock(SomeInterface.class);
- AnotherInterface mockAnotherObj = control.createMock(AnotherInterface.class);
2. 设定 Mock 对象的预期行为和输出;
Java代码
- expect(mockObj.someAction(1)).andReturn("one");
如果是一个返回void的方法调用:
Java代码
- mockObj.noReturnValueAction();
- expectLastCall(); // 最新版本的EasyMock可以忽略此句
3. 将 Mock 对象切换到 Replay 状态;
Java代码
- replay(mockObj);
对于使用control来管理的情况:
Java代码
- control.replay();
4. 调用 Mock 对象方法进行单元测试;
Java代码
- fakeInvoke(mockObj);
5. 对 Mock 对象的行为进行验证
Java代码
- verify(mockObj);
对于使用control来管理的情况:
Java代码
- control.verify();
窥探EasyMock(1)基础使用篇,布布扣,bubuko.com
时间: 2024-10-06 00:38:54