jetty模拟服务端作为测试桩进行接口测试详细介绍

有时,在进行接口测试时,很多时候需要依赖外部的接口环境,但在实际开发中,尤其是敏捷开发模式中,很多时候依赖的外部接口环境可能不通或者未开发完毕,这时候无法及时进行端到端的测试,测试桩的必要性就非常重要了。

我在上一篇文章中已介绍使用第三方工具SoapUI做为模拟服务端作为测试桩进行接口测试,详见http://blog.csdn.net/russ44/article/details/52230355
但由于SoapUI通常部署在本地的Windows环境上(linux环境本人未使用过,不建议),而测试环境通常部署在linux服务器上,可能存在测试环境无法调通本地环境的情况,这时就需要另一种方式部署到linux服务器进行接口测试,详细如下:

一、测试桩项目介

1. jetty介绍

Jetty 是一个开源的servlet容器,它为基于Java的web容器,易用性是 Jetty 设计的基本原则,详情可百度之

所需jar包(本人):


2. 测试桩目的:

测试人员在测试中,尤其是进行接口测试时,经常需要使用到测试桩来进行测试,通常情况下,相应的开发人员会写好相应的测试桩,以jar包的形式作为一个服务端给客户端进行调用(当接口联调未能按计划进行或延迟时,测试人员应主导向开发人员要求提供测试桩进行测试,具体视实际情况而定)

 

3. 测试桩原理

相当于启动一个jetty容器,拦截对应的请求,返回相应的报文。

 

4. 测试桩使用过程

1.server包下写一个带main函数(这个main函数会启动一个jetty容器)的java类,配置端口号,想要拦截的请求,和对应的处理请求的servlet

<span style="font-size:18px;">package cn.migu.server;

import org.eclipse.jetty.server.Server;
import org.eclipse.jetty.servlet.ServletContextHandler;
import org.eclipse.jetty.servlet.ServletHolder;

import cn.migu.servlet.JsonResponseDemo;
import cn.migu.servlet.XmlResponseDemo;
import cn.migu.util.Log4jUtil;

/**
 * <Description> 服务入口配置
 * @author YanLu
 *
 */
public class HttpServerDemo {

	//private static Log4jUtil log = new Log4jUtil(HttpServerDemo.class.getName());
	
	/**
	 * main方法入口
	 * 
	 * @param args
	 */
	public static void main(String[] args) {
		try {
			Server server = new Server(19993);
			// 指定服务的端口号

			ServletContextHandler context = new ServletContextHandler(ServletContextHandler.SESSIONS);
			// 一个context就是一个WEB-Application

			context.setContextPath("/test");
			// 访问项目名(路径)

			server.setHandler(context);
			// servlet映射的路径,类似于web.xml的servlet url-pattern定义

			context.addServlet(new ServletHolder(new XmlResponseDemo()), "/ChannelFaqSearch");
			// 两个参数分别为拦截请求的servlet和想要拦截的路径
			context.addServlet(new ServletHolder(new JsonResponseDemo()), "/ExecuteCampaign");
			//log.info("server start.");
			System.out.println("server start.");

			// 启动服务
			server.start();
			server.join();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
}
</span>

2.servlet

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值