如何使用EasyMock测试模拟调用的顺序

时间:2010-09-18 05:00:57

标签: java unit-testing testing mocking easymock

EasyMock中很容易做到:

EasyMock.expect(service.methodCall());

但是我注意到这并没有测试我执行调用的顺序,在我尝试测试的情况下非常重要。无论如何使用EasyMock做到这一点?

2 个答案:

答案 0 :(得分:5)

您可以使用EasyMock.createStrictMock()创建一个能够检查方法调用顺序的模拟器。

http://easymock.org/EasyMock3_0_Documentation.html

(例如,在上面的链接中搜索“在模拟之间检查方法调用顺序”)。

答案 1 :(得分:1)

如果您需要测试不同模拟对象的顺序,可以使用EasyMock.createStrictControl()创建模拟,运行replay()& verify()

此网站提供了一些方便的示例代码:http://www.michaelminella.com/testing/mock-controls-with-easymock.html