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. NLP(Natural Language Processing)

    https://github.com/kjw0612/awesome-rnn#natural-language-processing 通常有: (1)Object Recognition (2)Vis ...

  2. Hadoop 在ubuntu系统上的搭建[图解]

    前言 本文介绍如何在Ubuntu Kylin操作系统上搭建Hadoop平台. 配置 1. 操作系统: Ubuntu Kylin 14.04 2. 编程语言: JDK 1.8 3. 通信协议: SSH ...

  3. 尽可能使用 const

    前言 const 关键字是常量修辞符,如果要告知编译器某个变量在程序中不会发生改变,则可将其声明为 const. 但,对 const 关键字的认识不能仅仅停留在这一层 - 它提供了很多更强大的功能. ...

  4. 尽量多的以 const/enum/inline 替代 #define

    前言 在面向过程语言,如 C 语言中,#define 非常常见,也确实好用,值得提倡.但在如今面向对象的语言,如 C++ 语言中,#define 就要尽量少用了. 为何在 C++ 中就要少用了呢? 这 ...

  5. 关于kinect的安装与配置工作

    一 关于kinect的安装与配置工作 首先要注意的是,使用kinect进行开发,目前有两种不同的驱动方案,经测试这两种方案的驱动是不能兼容的,所以请务必选定其中一种(最好是卸载另外一种). 方案一:使 ...

  6. 235. Lowest Common Ancestor of a Binary Search Tree

    代码如下: /** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; ...

  7. sublime text3 本地化

    博客園中搜到n篇 同題日誌 沒一篇靠譜 超級反感這種行為,浪費別人的時間無異於謀財害命 自動: Control+` (注意不是cmd+p) import urllib.request,os,hashl ...

  8. JavaScript学习记录总结(六)——js函数闭包特性

    <script type="text/javascript">    function arrdemo(){        var arr=["hello&q ...

  9. 关于ZF2中一点感悟,service_manager

    在zf2中,在serviceLoctor中自定义的内容,可以通$serviceLocator->get('config')['key'],如果是在serivce_manger中定义的服务名,其实 ...

  10. ubuntu下nfs服务器的安装与配置

    nfs服务器的安装和配置 1.安装nfs 服务器,前提是你的系统能连上网. 2.设置/etc/exports配置文件 (1) 进入/etc/exports配置文件 (2) 在最后一行加入红色那行,/h ...