EasyMock
1.概述
MockObject是一样彻底分层开发的好东西,而且使用上没什么难度。而且已不再存在只支持接口不支持Class的限制。
1.1 Easy Mock VS JMock
JMock 要求TestCase继承于MockObjectTestCase太霸道了。妨碍了我继承于Spring2.0的ModelAndViewTestCase和使用MockDao,RealDao并行的继承体系。因此采用没那么霸道的easyMock。
另外,easyMock的脚本录制虽不如jmock那么优美,但胜在简短易读。jmock那句太长了 。
2.使用
bookManagerMockControl = MockClassControl.createControl(BookManager.class);
bookManagerMock = (BookManager) bookManagerMockControl.getMock();
controller.setBookManager(bookManagerMock);
bookManagerMock.getAllBook();
bookManagerMockControl.setReturnValue(new ArrayList());
bookManagerMockControl.replay();
mv = controller.handleRequest(request, response);
assertModelAttributeAvailable(mv, "books");