项目采用分层开发,服务端和客户端。服务端的开发需要测试,但是涉及到了servletrequest和servletresponse。这里提供两种方法。
1、easymock
2、springmock
第一种方法
代码
第二种方法
EasyMock主要是为测试提供模拟数据,比如你可以模拟HttpServletRequest。
EasyMock 可以mock interface和抽象java 类,但是不可以mock拥有被final修饰方法的类,不能mock静态方法(我遇到的情况是这样)。在使用的时候请注意:org.easymock.classextension.EasyMock 被用来mock抽象类(abstract)和具体类org.easymock.EasyMock被用来mock接口(interface)使用用EasyMock的一般步骤:1.创建一个mock对象HttpServletRequest request = EasyMock.createMock(HttpServletRequest.class);2.设置此对象的某个方法的返回值EasyMock.expect(request.getParameter("userName")).andReturn("trilogy").once();注意:必须手工设置被mock的方法的访问次数once()antyTimes()times(int)建议:在设置方法调用次数的时候,虽然你可以调用anyTimes(),但是最好明确你要调用多少次如:once()、times(2),这样做的话显的比较严谨。如果mock的方法没有返回值,可以这么做:request.setAttribute("userId");EasyMock.expectLastCall().once();对于被mock的方法参数,也可以不必指定具体的值:EasyMock.expect(request.getParameter((String)EasyMock.anyObject())).andReturn("trilogy").once();如果你想让被mock的方法返回一个异常,前提是被mock的方法会抛出异常,你可以这么做:EasyMock.expect(input.read()).andThrow(new IOException("Mocked IOException")).once();你还可以根据调用顺序来mock同一个方法:EasyMock.expect(request.getParameter("userName")).andReturn("trilogy").once();EasyMock.expect(request.getParameter("userName")).andReturn(null).once();当第一次执行request.getParameter("userName")的时候,返回“trilogy”当第二次执行request.getParameter("userName")的时候,返回null3.保存被mock的对象EasyMock.replay(a);4.在被mock的对象被应用之后,最好验证一下我们所设置的mock对象是不是按我们预期运行。EasyMock.verify(a);总结:EasyMock是一个相当方便的mock工具,可以为我们的测试工作提供极大的便利,特别是在测试web层或者数据库访问的时候。在这里我只是抛砖引玉地介绍了一下EasyMock的使用,其实EasyMock还有很多其它更高级的使用,如过你愿意的话可以访问以下的网址来获得更多信息:官网:www.easymock.org
您还没有登录,请您登录后再发表评论
通过地址解析一张图说明浏览器和Tomcat服务器之间的通信关系。相关技术点有servlet、request、response、(XML小配置)等等。
JavaWeb(Servlet+request和response+EL表达式+JSP+Cookie和Session)
jsp本质上是servlet,但是为了更加符合mvc的框架,将页面显示和逻辑控制分离,jsp页面只负责页面,也就是mvc中的V(view),而servlet负责mvc中的C(control)。
http详解及Servlet中的request、response
Servlet - request、response方法.zip - 解包大小为 16.7 KB ------- excel 文档
Servlet Filter 的单元测试Servlet Filter 的单元测试Servlet Filter 的单元测试Servlet Filter 的单元测试Servlet Filter 的单元测试
JSP中Servlet的Request与Response的用法与区别 简介:Web服务器收到客户端的http请求,会针对每一次请求,分别创建一个用于代表请求的request对象、和代表响应的response对象。request和response对象即然代表请求和...
Servlet Request的常用方法,及基本语句
移动开发的小白树懒,此文档写的是servlet的request/response的笔记...阐述了一些request和response常用的api.
servlet中的一些方法
Tomcat/Servlet/Response/Cookie/Session/HTTP/Request
第七章 Response讲解7.1 Response简介定义辅助 servlet 将响应发送到客户端的对象。servlet 容器创建 ServletRespon
JavaWeb02-request与response.rar JavaWeb03-会话跟踪cookie与session.rar JavaWeb04-内置对象与include指令.rar JavaWeb05-购物车.rar JavaWeb06-Servlet.rar JavaWeb07-javaWeb模式.rar JavaWeb08-DBUtil.rar ...
Servlet+jstl标签模拟购物车(书本订购)
基于JSP+Servlet+Mysql的模拟咖啡厅点餐管理系统源码+数据库.zip 95分以上课程设计项目,也可作为期末大作业,代码完整下载即用,小白也可实战 基于JSP+Servlet+Mysql的模拟咖啡厅点餐管理系统源码+数据库.zip 95...
自己架构模拟tomcat、servlet服务器,涉及到 socket io 容器 html解析以及请求方式解析
A filter is an object that performs filtering tasks on either the request to a resource (a servlet or static content), or on the response from a resource, or both. Filters perform filtering in the ...
WEB容器在启动时,它会为每个WEB应用...由于一个WEB应用中的所有Servlet共享同一个ServletContext对象,因此Servlet对象之间可以通过ServletContext对象来实现通讯。ServletContext对象通常也被称之为context域对象。
Response对象用语输出数据到客户端,包括向浏览器输出数据、重定向浏览器到另一个URL或向浏览器输出Cookie文件。 Request对象主要是让服务器取得客户端浏览器的一些数据,包括从HTML表单用Post或者GET方法传递的参数...
相关推荐
通过地址解析一张图说明浏览器和Tomcat服务器之间的通信关系。相关技术点有servlet、request、response、(XML小配置)等等。
JavaWeb(Servlet+request和response+EL表达式+JSP+Cookie和Session)
jsp本质上是servlet,但是为了更加符合mvc的框架,将页面显示和逻辑控制分离,jsp页面只负责页面,也就是mvc中的V(view),而servlet负责mvc中的C(control)。
http详解及Servlet中的request、response
Servlet - request、response方法.zip - 解包大小为 16.7 KB ------- excel 文档
Servlet Filter 的单元测试Servlet Filter 的单元测试Servlet Filter 的单元测试Servlet Filter 的单元测试Servlet Filter 的单元测试
JSP中Servlet的Request与Response的用法与区别 简介:Web服务器收到客户端的http请求,会针对每一次请求,分别创建一个用于代表请求的request对象、和代表响应的response对象。request和response对象即然代表请求和...
Servlet Request的常用方法,及基本语句
移动开发的小白树懒,此文档写的是servlet的request/response的笔记...阐述了一些request和response常用的api.
servlet中的一些方法
Tomcat/Servlet/Response/Cookie/Session/HTTP/Request
第七章 Response讲解7.1 Response简介定义辅助 servlet 将响应发送到客户端的对象。servlet 容器创建 ServletRespon
JavaWeb02-request与response.rar JavaWeb03-会话跟踪cookie与session.rar JavaWeb04-内置对象与include指令.rar JavaWeb05-购物车.rar JavaWeb06-Servlet.rar JavaWeb07-javaWeb模式.rar JavaWeb08-DBUtil.rar ...
Servlet+jstl标签模拟购物车(书本订购)
基于JSP+Servlet+Mysql的模拟咖啡厅点餐管理系统源码+数据库.zip 95分以上课程设计项目,也可作为期末大作业,代码完整下载即用,小白也可实战 基于JSP+Servlet+Mysql的模拟咖啡厅点餐管理系统源码+数据库.zip 95...
自己架构模拟tomcat、servlet服务器,涉及到 socket io 容器 html解析以及请求方式解析
A filter is an object that performs filtering tasks on either the request to a resource (a servlet or static content), or on the response from a resource, or both. Filters perform filtering in the ...
WEB容器在启动时,它会为每个WEB应用...由于一个WEB应用中的所有Servlet共享同一个ServletContext对象,因此Servlet对象之间可以通过ServletContext对象来实现通讯。ServletContext对象通常也被称之为context域对象。
Response对象用语输出数据到客户端,包括向浏览器输出数据、重定向浏览器到另一个URL或向浏览器输出Cookie文件。 Request对象主要是让服务器取得客户端浏览器的一些数据,包括从HTML表单用Post或者GET方法传递的参数...