Jmeter创建WebService 测试计划
构建 WebService 测试计划
在本章节,你将学习如何创建一个 测试计划 去测试 WebService。先创建5个用户请求同一个页面,同时每个请求重复2次,因此总数为(5个用户)X(1次请求)X(重复请求)= 10 次 HTTP 请求。构建测试计划过程中,会使用到以下几个元素:线程组、HTTP 请求、聚合报告
如果采样器使用Web服务时出现错误,请仔细检查 SOAP 消息,并确保格式正确。 特别要确保 xmlns 属性与WSDL完全相同。 如果xml命名空间不同,则 webservice 可能会返回错误。
1 构建 WebService 测试计划
在测试计划中,将会用到 .NET 语言写的web服务,在此就不详细介绍web 服务的编写方法了。如果不会,请自行谷歌 web 服务并尝试用 java 或 .NET熟练起来。必须强调的是,使用 .NET 和 Java 实现 web 服务是有较大差别。该主题太广泛无法写到用户手册里,所以想了解具体差异可参考其他资料。
Jmeter是按照树状的排列方式去发送请求的
找到菜单中的 文件 → Templates , Select Template 中的 “Building a SOAP Webservice Test Plan”,点击 “Creat” 按钮。
以国内手机号码归属地查询接口为例:http://ws.webxml.com.cn/WebServices/MobileCodeWS.asmx
修改下列选项:
- 在 “HTTP Request Defaults” 元件中, “服务器名或IP:” 选项 填写网址或IP(ws.webxml.com.cn)。
- 在 “Soap Request” 元件中,”路径:” 选项 填写接口路径(/WebServices/MobileCodeWS.asmx)。
接下来,右键目录栏的 test plan,选择”HTTP Header Manager”,并更新 “SOAPAction” 头以匹配你的 webservice ,如果这个 webservice 不需要 SOAPAction 那就移除掉。目前,只有.NET需要用到 SOAPAction ,所以对于其他Web服务包括JWSDP,Weblogic,Axis,Mind Electric Glue和gSoap等是不需要用到的。
这里需要将 SOAPAction 修改:“http://WebXml.com.cn/getMobileCodeInfo"
最后一步就是把 SOAP 信息粘贴到 “Body Data” 的文本框。
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:web="http://WebXml.com.cn/">
<soapenv:Header/>
<soapenv:Body>
<web:getMobileCodeInfo>
<!--Optional:-->
<web:mobileCode>186xxxxxxxx</web:mobileCode>
<!--Optional:-->
<web:userID></web:userID>
</web:getMobileCodeInfo>
</soapenv:Body>
</soapenv:Envelope>
9.1.3 Webservice请求默认值
注:将186xxxxxxxx 替换为具体手机号。
2 增加用户组
线程组 将告诉JMeter需要模拟的用户数量,用户发送请求的频率以及发送请求的数量。
如果还未设置线程组的元素,应该在JMeter窗口右侧部分的线程组控制面板进行选择(参见下图9.2)
图9.2 线程组默认值
首先为线程组提供一个更具描述性的名称。 在名称字段中,输入 JMeter 用户。
接下来,将用户数(有名线程)增加到10。
在下一个字段中,准备时长默认值为0秒。 此属性告诉JMeter启动每个用户需要多长时间。 例如,如果你输入5秒,JMeter将在5秒之后完成所有用户的启动。 因此,如果我们有5个用户和5秒的准备时长,则启动用户之间的延迟将为1秒(5个用户/ 5秒=每秒1个用户)。 如果将值设置为0,那么JMeter将立即启动所有用户。
最后,去掉 “永远” 的勾选并填写数字2,代表jmeter将重复执行2次;如果默认填写0,Jmeter只会执行一次;如果勾选 “永远”,代表Jmeter会重复执行。
在大多数应用程序中,你必须手动更改并保存才能生效。 但是,在JMeter中,控制面板会在你进行更改时自动保存生效。 比如你更改元素的名称,则在离开控制面板后,新的元素名称就会生效。
完整的JMeter用户线程组参见图9.2
3 增加监听器查看测试结果
最后一步是添加监听器到测试计划。 监听器的左右是负责将HTTP请求的所有结果存储在文件中,并呈现数据的可视化模型。
选择JMeter Users元素并添加一个聚合图监听器(添加 → 监听器 → Aggregate Graph)。 然后指定输出文件的目录和文件名。 也可以选择浏览按钮并浏览到目录,然后输入文件名。
4 Rest Webservice
测试REST Webservice手法与上述相似,只需要在HTTP请求中进行修改即可。
方法:选择要测试的一个 参数设置:可以是JSON,XML或任何自定义文本
你可能还需要修改 “HTTP头管理器” 来选择正确的 “Content-Type”。
转载原文:http://www.testclass.net/jmeter/jmeter-doc-09/
Jmeter创建WebService 测试计划的更多相关文章
- jmeter 创建web测试计划
测试用例: 1 创建5个用户发送请求到2个web页面: 2 发送3次请求 总请求=5*2*3=30 创建这个测试计划需要用到以下元素:thread groups / http request / ht ...
- Jmeter创建FTP测试计划
创建FTP测试计划 在这一章,你将学习如何创建一个基础的测试计划来测试FTP站点.你将在一个FTP站点上的两个文件中创建四个用户来发送请求.并且,你将告诉用户运行测试两次.所以,总的请求数是(4个用户 ...
- Jmeter创建web测试计划
创建web测试计划 在这一章,我们将学习如何创建基本的测试计划来测试一个web网站.您将创建五个用户并发送请求到JMeter网站的两个页面.同时,设置用户运行测试两次.因此,请求的总数是(5个用户)x ...
- 使用JMeter创建FTP测试计划
FTP服务主要提供上传和下载功能.有时间需要我们测试服务器上传和下载的性能.在这里我通过JMeter做一个FTP测试计划的例子. 当然,JMeter官方网站的用户手册也有例子,但由于版本较早,我也算是 ...
- jmeter创建数据库测试计划
这个例子要:创建50个用户发送2个sql请求到数据库服务器, 也可设置用户重复执行100次,这样总的请求数=50*2*100 用到以下元素:thread group / jdbc request / ...
- Jmeter 创建FTP测试计划
FTP服务主要提供上传和下载功能. 操作步骤: 1.创建一个线程组 2.线程组--->添加--->配置元件--->FTP请求缺省值:输入服务器名称或IP. 3.线程组--->添 ...
- jmeter创建高级测试计划
如果应用程序使用重写地址而不是使用cookie存储信息,需要做一些额外的工作去测试程序 为了正确的响应重写地址,jmeter 需要解析 从服务器获取html 并且检索会话ID, 1 合理利用pre-p ...
- JMeter 系列之—-02 创建数据库测试计划
Jmeter创建数据库测试计划,包括如下步骤: 1. 添加数据库jar包 使用不同的数据库,要引入不同的jar包.主要有两种方式: 方式1:直接将jar包复制到jmeter的lib目录 方式2:通过测 ...
- Jmeter创建一个web测试计划
1. 下载Jmeter 下载地址:http://jmeter.apache.org/download_jmeter.cgi 下载后解压到你想“安装”的路径下,比如: D:\Program Files ...
随机推荐
- 团体程序设计天梯赛L1-017 到底有多二 2017-03-22 17:31 155人阅读 评论(0) 收藏
L1-017. 到底有多二 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 一个整数"犯二的程度"定义为该数 ...
- 在github创建用户
在Github注册账户 第一个是创建用户名,第二个是填写邮箱,第三个是设置密码 进入给github会让你选择账户类型 第二步完成后会让你完成邮箱的验证 验证完邮箱以后此时就验证成功了点击绿色的 let ...
- MVC v5.1 Preview 包含 web api 2.1 web pages 3.1
Includes ASP.NET MVC 5.1, Web API 2.1, and Web Pages 3.1 preview release. This was released marked a ...
- gitignore 使用
在git中如果想忽略掉某个文件,不让这个文件提交到版本库中,可以使用修改根目录中 .gitignore 文件的方法(如无,则需自己手工建立此文件).这个文件每一行保存了一个匹配的规则例如: # 此为注 ...
- windows server 2008 站点系列--AD的站点建立与子网的管理(zhuanzai)
本次课程将给大家介绍AD中站点和子网的功能.站点和子网之间的关联,以及相关的设置步骤. 应用背景介绍: contoso公司的总部在西安(Xian),陕南的汉中(Shannan)和陕北的榆林(Shanb ...
- telnet 工具
关于 telnet 命令 telnet命令通常用来远程登录.telnet程序是基于TELNET协议的远程登录客户端程序.Telnet协议是TCP/IP协议族中的一员,是Internet远程登陆服务的标 ...
- Elastic Search 5.x Nest Multiple Queries C#
I'm using C# with those nuget packeges; <package id="Elasticsearch.Net" version="5 ...
- JSP的介绍及语法详解
一.简介 > HTML - HTML擅长显示一个静态的网页,但是不能调用Java程序. > Servlet - Servlet擅长调用Java程序和后台进行交互,但是它不擅长显示一个完整的 ...
- Java初学者的学习路线建议
java学习这一部分其实也算是今天的重点,这一部分用来回答很多群里的朋友所问过的问题,那就是我你是如何学习Java的,能不能给点建议?今天我是打算来点干货,因此咱们就不说一些学习方法和技巧了,直接来谈 ...
- Hadoop虚拟机的jdk版本和本地eclipse的版本不一致怎么办
在本周学习Hadoop遇到了一个问题,困扰了半天,本人在安装Hadoop时是按照视频来的,结果发现Hadoop上的jdk版本和本地eclipse的版本不一致,导致本地的程序到处jar包传到虚拟机上运用 ...