0 0

如何对SipServlet的doInvite方法进行测试?5

如题,好像用easyMock可以,但是不知道咋整,给个列子

问题补充:easyMock搜了下,只有测试httpservlet的,原理应该类似

package com.servlet.test;

import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.ServletException;
import java.io.IOException;

public class LoginServlet extends HttpServlet
{
/**
*
*/
private static final long serialVersionUID = 6648223615334008738L;

protected void doGet(HttpServletRequest httpServletRequest,
HttpServletResponse httpServletResponse) throws ServletException,
IOException
{
super.doGet(httpServletRequest, httpServletResponse);
}

public void doPost(HttpServletRequest httpServletRequest,
HttpServletResponse httpServletResponse) throws ServletException,
IOException
{
// super.doPost(httpServletRequest, httpServletResponse);
String username = httpServletRequest.getParameter("username");
String password = httpServletRequest.getParameter("password");
System.out.println(">>>>> " + username + " " + password);
}
}


package com.servlet.test;

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;

import static org.easymock.EasyMock.createMock;
import static org.easymock.EasyMock.expect;
import static org.easymock.EasyMock.verify;
import static org.easymock.EasyMock.replay;

import junit.framework.TestCase;

public class TestMockUnit extends TestCase
{

public void testLoginFailed() throws IOException, ServletException
{
              
                 // 1.获取Mock对象。
                // 因为在doGet()和doPost()用到了HttpServletRequest
HttpServletRequest request = createMock(HttpServletRequest.class);

                 // 2.对象,需要对其模拟
                // 模拟httpServletRequest.getParameter("username");
expect(request.getParameter("username")).andReturn("12345");

                // 3.得到的值。在模拟测试中,模拟对象是不执行任何业务操作的,需要模拟出来
expect(request.getParameter("password")).andReturn("ABCDEF");
replay(request);
LoginServlet servlet = new LoginServlet();
try
{
servlet.doPost(request, null);
                        // 4.在调用用的模拟对象前,一定要执行verify操作
verify(request);
}
catch (ServletException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}
}
}
sip 
2012年10月10日 11:59
目前还没有答案

相关推荐

    SipServlet API

    SipServlet API提供了对这些概念的支持,帮助开发者正确地管理SIP流程。 在实际开发中,`sipservlet-1.0-fcs`可能是一个最终的全功能候选版本(Final Candidate Set),包含了完整的SipServlet API库。开发者可以将...

    sipservlet-1.0-fcs

    2. **会话管理**:SIPServlet API提供了对会话的精细控制,包括建立、修改、终止会话。这对于实现VoIP、视频会议和即时消息等实时通信服务至关重要。 3. **事件模型**:SIPServlets使用类似于HTTP Servlet的事件...

    sipservlet 1.1

    sipservlet 1.1 sip sipservlet 1.1 sipsipservlet 1.1 sip

    sipservlet_demo_chatroom

    - **事件驱动模型**:SIPServlets基于事件驱动模型,当SIP事件(如INVITE、MESSAGE或SUBSCRIBE)发生时,相关的Servlet方法会被调用。 - **安全性**:在实际部署中,需要考虑SIP通信的安全性,例如使用TLS加密传输...

    SIPServlet0[1].5.rar_SIP java_sip_sip Servlet_sip server_sipserv

    3. **SIP Servlet生命周期**:学习SIP Servlet的初始化、服务、销毁等阶段,以及如何在不同阶段进行定制化操作。 4. **SIPServlet API**:详细讲解API中的关键类和接口,如`javax.sip.SipServlet`、`javax.sip....

    sip servlet api

    SIP Servlet API是一个重要的软件开发接口,用于构建和管理基于Session Initiation Protocol (SIP)的应用程序。SIP是一种互联网协议,主要用于控制多媒体通信会话,如语音和视频通话、即时消息以及在线会议等。SIP ...

    Understanding sip servlet 1.1

    ### SIP Servlet 1.1 知识点解析 #### 一、SIP Servlet 概念与背景 **SIP Servlet** 是一种基于 Java 的技术,它允许开发人员使用 **Session Initiation Protocol (SIP)** 来创建通信应用程序。SIP 是一种用于控制...

    sip servlet开发

    通过SIP Servlet类中的各种`doXXX()`方法(如`doInvite()`、`doAck()`等),应用程序可以处理各种SIP消息。 ##### 2.3 模拟场景:Alice与Bob之间的会话建立 以Alice和Bob两个用户代理间的IMS会话建立为例,可以...

    SIp Servlet的jar包

    支持sip协议的sipServlet的jar包。

    sipservlet undersatnd

    英文版的sipservlet,对APi详解sipservlet undersatnd

    sip-servlet-jboss 1.2.0

    5. **SIP会话处理**:SIP Servlets允许开发者通过Override `doInvite()`, `doAck()`, `doBye()`等方法来处理SIP会话的不同阶段,如邀请(INVITE)、确认(ACK)和结束(BYE)等。 6. **安全性与认证**:JBoss AS...

    sip-api.jar

    SIP-api.jar是开发者进行SIP应用开发时常用的工具包,它包含了对SipServlet和JAIN-SIP的支持,为构建基于SIP协议的通信应用提供了便利。 SipServlet,是基于Servlet模型的SIP应用接口,它将HTTP服务器的概念引入到...

    SIP协议呼叫压力测试软件

    SIP协议呼叫压力测试软件是一种专门用于检验和评估SIP(Session Initiation Protocol...总的来说,SIP协议呼叫压力测试软件是保障通信系统稳定、高效运行的重要工具,其应用和调试需要对SIP协议和Linux系统有深入理解。

    SIP测试软件

    SIP(Session Initiation Protocol)测试软件是一种用于建立、管理和终止多媒体通信会话的网络协议。...在实际使用中,可以对sip_test文件进行解压,查看源代码,运行程序,分析其工作过程,从而加深对SIP协议的掌握。

    SIP Phone_sip_phone_

    以下是对SIP电话及其相关技术的详细说明: 1. **SIP协议**:SIP是IETF定义的一种应用层控制协议,用于创建、修改和结束多媒体会话,如语音和视频通话。它允许网络设备通过IP网络进行通信,是VoIP(Voice over IP)...

    sip会话模拟测试

    SIP(Session Initiation Protocol)是一种应用层控制协议,用于创建、修改和终止多媒体通信会话,如...通过深入研究这些文件和编写自定义测试用例,开发者可以深化对SIP协议的理解,并提升其在实际项目中的应用能力。

    SIP模拟测试工具sipp-3.3

    **SIP模拟测试工具sipp-3.3详解** ...总的来说,`sipp-3.3`是SIP协议测试的重要工具,通过灵活的命令行接口和可定制的XML测试脚本,可以对SIP服务进行全面、深入的测试,保障通信系统的可靠性和效率。

Global site tag (gtag.js) - Google Analytics