WebSerivice测试计划的取样器有两种方式:HTTP请求、SOAP/XML-RPC Request。

1. 测试计划

启动JMeter,点击测试计划节点上,重命名测试计划:WebserviceTest.如下图:

2. 添加线程组 

添加一个线程组,右键单击测试计划 WebserviceTest -添加 - Threads(Users) > 线程组。接下来,修改线程组的默认属性。修改以下属性:
   Name: Number of Users
  Number of Threads (Users): 5
  Ramp-Up Period: 5
  Loop Count:2
如下图:
 
3. 添加配置元件
a.右键单击测试计划 WebserviceTest -添加 -配置元件 > 用户定义的变量
名称:User Defined Variables
点击添加,设置名称:host,
          设置值:wsf.cdyne.com,
     设置Description:Host of Webservice. 
 
b. 右键单击测试计划 WebserviceTest -添加 -配置元件 > HTTP请求默认值,名称:HTTP Request Defaults
  点击添加,设置服务器名称或IP:${host}
 
 
4. 添加取样器
注意:这里有两种取样器都可以,HTTP请求或者SOAP/XML-RPC Request
 
  • 介绍HTTP请求的做法:右键单击线程组 Number of Users-添加 -Sampler > HTTP请求
设置如下参数:
名称:Soap Request 
路径:/WeatherWS/Weather.asmx
BodyData
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<GetCityForecastByZIP xmlns="http://ws.cdyne.com/WeatherWS/">
<ZIP>60601</ZIP>
</GetCityForecastByZIP>
</soap:Body>
</soap:Envelope>

  • 介绍SOAP/XML-RPC Request的做法:右键单击线程组 Number of Users-添加 -Sampler > SOAP/XML-RPC Request
设置如下参数:
名称:Soap Request 
URL:http://${host}/WeatherWS/Weather.asmx
BodyData
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<GetCityForecastByZIP xmlns="http://ws.cdyne.com/WeatherWS/">
<ZIP>60601</ZIP>
</GetCityForecastByZIP>
</soap:Body>
</soap:Envelope>
如下图所示:

简单讲解一下Soap/XML-RPC Data的编写:
GetCityForecastByZIP是WebService发布的方法;
http://ws.cdyne.com/WeatherWS/是GetCityForecastByZIP所在类的域名;
ZIP是GetCityForecastByZIP类的参数名,参数类型是int;
60601是输入的实参。
 
 
5. 添加监听器
右键单击线程组 Number of Users-添加 -监听器> 察看结果树
 
 
6. 运行此测试计划

现在保存的以上测试计划 test_webservice.jmx。执行本测试计划使用 Run > Start  选项。
 
至此,整个测试计划就完成了。

【jmeter】WebSerivice测试的更多相关文章

  1. JMeter常用测试元件—学习笔记

    线程组 Ramp-Up Period:告诉JMeter达到最大线程数需要多长时间.假定共有10个线程,Ramp-Up Period为100秒,那么JMeter就会在100秒内启动所有线程,并让它们运转 ...

  2. 【Fine原创】JMeter分布式测试中踩过的那些坑

    最近因为项目需要,研究了性能测试的相关内容,并且最终选用了jmeter这一轻量级开源工具.因为一直使用jmeter的GUI模式进行脚本设计,到测试执行阶段工具本身对资源的过量消耗给性能测试带来了瓶颈, ...

  3. JMeter压力测试以文件的形式

    JMeter压力测试入门教程[图文] 1. 下载JMeter 2. 启动JMeter 3. 运行预准备 4. 运行 文章目录 Apache JMeter是Apache组织开发的基于Java的压力测试工 ...

  4. jmeter 压力测试 参数

    Aggregate Report 是 JMeter 常用的一个 Listener,中文被翻译为“聚合报告”.今天再次有同行问到这个报告中的各项数据表示什么意思,顺便在这里公布一下,以备大家查阅. 如果 ...

  5. 使用非 GUI 模式运行 JMeter 压力测试

    使用非 GUI 模式,即命令行模式运行 JMeter 测试脚本能够大大缩减所需要的系统资源.使用命令jmeter -n -t <testplan filename> -l <list ...

  6. jmeter压力测试笔记- HTTP协议

    一.目标 使用jmeter进行HTTP接口压力测试: 命令行方式运行,方便在linux环境运行: 二.面临的问题 支持多环境测试(开发.测试.生产环境) 支持用户数据.线程数.循环次数等配置在运行时自 ...

  7. jmeter分布式测试教程和远程的代理机无法连接网络的问题解决方法

    一.Jmeter分布式执行原理: 1.Jmeter分布式测试时,选择其中一台作为控制机(Controller),其它机器做为代理机(Agent). 2.执行时,Controller会把脚本发送到每台A ...

  8. 转:Jmeter分布式测试

    在使用Jmeter进行性能测试时,如果并发数比较大(比如最近项目需要支持1000并发),单台电脑的配置(CPU和内存)可能无法支持,这时可以使用Jmeter提供的分布式测试的功能. 一.Jmeter分 ...

  9. jmeter 压力测试

    转自: https://blog.csdn.net/cbzcbzcbzcbz/article/details/78023327 Jmeter压力测试简单教程(包括服务器状态监控) 2017年09月18 ...

  10. Jmeter远程测试

    11.3 详解JMeter远程测试(1) 2012-04-09 09:14 温素剑 电子工业出版社 字号:T | T 综合评级: 想读(7)  在读(2)  已读(0)   品书斋鉴(0)   已有9 ...

随机推荐

  1. <td colspan="2" > 一个td占两个 td空间

    <tr> <td>机构名称: ${accreditInfo.companyName}</td> <td>初始授信额度: ${accreditInfo.i ...

  2. CSS 实现:父元素包含子元素,子元素垂直居中布局

    ☊[实现要求]:父元素包含子元素,子元素垂直居中布局 <div class="demo5"> <div class="child">A& ...

  3. 消格子时一个很深的bug的修复纪录

    环境: cocos2d-x 2.2.2  jsb   条件:当快速在格子中来回拖拽选取时,会一直在计算指尖和格子的真实区域是否碰撞,   报错:touchMOve时由于不停的调用BOxItem的get ...

  4. Linux中的likely()和unlikely()

    likely()与unlikely()在2.6内核中,随处可见,那为什么要用它们?它们之间有什么区别呢?首先明确: if (likely(value))等价于if (value) if (unlike ...

  5. QMP ( qemu monitor protocol ) and Different ways of accessing it

    The QEMU Monitor Protocol (QMP) is a JSON-based protocol which allows applications to communicate wi ...

  6. ZPPR101-批量更改BOM组件

    ************************************************************************ Title : ZPPR101 ** Applicat ...

  7. 精美的HTML5 Loadding页面

    以前我们大部分的Loading动画都是利用gif图片实现的,这种图片实现Loading动画的方法虽然也很不错,但是作为HTML5开发者来说,如果能利用HTML5和CSS3实现这些超酷的Loading动 ...

  8. Java动物声音模拟器

    abstract class Animal{ abstract void cry(); abstract String getAnimalName(); } class Simulator{ void ...

  9. wamp2.4允许局域网访问,如Android模拟器和手机

    Apache 从2.2升级到 Apache2.4.x 后配置文件 httpd.conf 的设置方法有了大变化,以前是将 deny from all 全部改成 Allow from all 实现外网访问 ...

  10. 论文笔记之:Learning to Track: Online Multi-Object Tracking by Decision Making

    Learning to Track: Online Multi-Object Tracking by Decision Making ICCV   2015 本文主要是研究多目标跟踪,而 online ...