由于JUnit很难操控外部环境的资源,如数据库、网络、Servlet引擎;通过MOCK对象就能模拟外部环境的资源,从而保证JUnit的正常运行。
其中EasyMock是一套简单的生成MOCK对象类库,用它可以非常容易的辅助JUnit完成单元测试;如下:
public class UseMock {
@Test
public void testMock() {
HttpServletRequest request = EasyMock.createMock(HttpServletRequest.class);
request.getParameter("ffff");
EasyMock.expect(request.getParameter("ffff")).andReturn("33333");
EasyMock.expect(request.getRealPath("/")).andReturn("fffffffff").anyTimes();
//EasyMock.expectLastCall().andReturn("ffff").times(1);
EasyMock.replay(request);
System.out.println(request.getRealPath("/"));
System.out.println(request.getRealPath("/"));
EasyMock.verify(request);
}
}