loadrunner:web services接口测试
本文以实例讲解web services接口测试操作,内容包括:脚本生成、参数化和接口与接口间的取值关联操作。
网站“http://www.webxml.com.cn/zh_cn/web_services.aspx”有很多开放的接口可供大家练习。
这次我们以“中文<->英文双向翻译WEB服务”接口为实例讲解web services接口测试:
1.1 生成脚本
1) 选择Web Services协议

2) 添加服务调用:打开Manage Services添加WSDL

3) 调用接口:打开Add Service Call在Operation下拉框,我们可以看到根据WSDL文件加载了6个接口方法,这时我们选择中"Translator"接口方法。

下面是Translator的解析:
输入参数:wordKey = 单词; 返回数据:DataSet。(包括全部数据三个DataTable)
如下图所示,我们用soapUI执行Translator方法输入参数值“services”后返回的结果

4) 输入参数:回到Web Service Call窗口,“Input Arguments”下就是该方法的参数,如下图所示,Translator下有一个参数"wordKey",这时我们选中"wordKey"在Value中输入参数值“services”

5) 点击“OK”后就生成了web_service_call,如下图所示,运行返回一组数据。(日志中有中文乱码,暂时不懂解决)

1.2 参数化
web services的参数化很简单,还是回到web service call窗口,直接选择参数进行参数化即可,如下图所示:

生成脚本如下:
1.3 接口间的参数关联
接口测试时,难免会出来接口之间参数传递,下面来说说接口间的参数关联。
以“400个国内外主要城市天气预报Web服务”接口为实例 |
|
Endpoint: http://ws.webxml.com.cn/WebServices/WeatherWebService.asmx |
|
Disco: http://ws.webxml.com.cn/WebServices/WeatherWebService.asmx?disco |
|
WSDL: http://ws.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl |
如下图所示,我们先添加了两个接口方法getSupportProvince和getSupportCity,在getSupportCity方法中我们暂时不参数化,而是先直接给“byProvinceName”赋了一个值“广东”。下面我们就通过修改脚本从getSupportProvince结果中取值给byProvinceName。

打开“Tree”视图 > 选择“getSupportProvince_101”> 打开“SnapShot”标签页 > 点击“Response”获取getSupportProvince的结果列,如下图所示:

找到是“广东”的返回值后,右键选择“save value in parameter..”

弹出XML parameter Properties窗口,如下图所示,这次关联是以XPath路径查找返回值的。这时我们输入参数名称“ParamValue_Province”即可。

点击“OK”,脚本中就生成了关联函数lr_xml_get_values,如下图所示,生成并调用ParamValue_Province

运行,查看ParamValue_Province的取值,如下图所示为“广东”

如何取一组关联数据:
如果要取得所有省份就把
1) “FastQuery”改为“Query”;
2) Xpath: “/Envelope/Body/getSupportProvinceResponse/getSupportProvinceResult/string”;
3) 增加属性"SelectAll=yes"。

如下图,输出了ParamValue_Province数组,我们取了第24个赋值到下一个方法

loadrunner:web services接口测试的更多相关文章
- 使用LoadRunner对Web Services进行调用--Import Soap
利用LoadRunner对Web Services进行测试时,通常有三种可供采用的方法: 在LoadRunner的Web Services虚拟用户协议中,[Add Service Call] 在Loa ...
- 使用LoadRunner对Web Services进行调用--Add Service Call
利用LoadRunner对Web Services进行测试时,通常有三种可供采用的方法: 在LoadRunner的Web Services虚拟用户协议中,[Add Service Call] 在Loa ...
- Web Services的相关名词解释:WSDL与SOAP
在对Web Services进行性能测试时,接触到最多的两个名词就是WSDL和SOAP.利用LoadRunner对Web Services进行调用的时候,也存在两种常用方法,即基于WSDL的[Add ...
- web service接口测试工具选型
1 简介 1.1 范围 1.2 目的 本文档用于指导测试部进行接口测试. 2013-03-11磁针石 #承接软件自动化实施与培训等gtalk:ouyangchongwu#gmail.com ...
- 深入解析Web Services
SOA,面向服务器建构,是一款架构,这几年虽然没前几年那么流行,但是还是有很多企业在用,而Web Services是目前适合做SOA的主要技术之一,通过使用Web Services,应用程序可以对外发 ...
- .NET RESTful Web Services入门
很早之前看到过RESTful Web Services,并未在意,也没找相关资料进行学习.今天偶尔有一机会,就找了点资料进行研究,发现RESTful真是“简约而不简单”.下面用示例来说明: 1 项目结 ...
- 分分钟带你玩转 Web Services
当大型需求被数个公司分割开来,各公司系统相互交换数据的问题就会接踵而来. 毕竟是多家不同的公司的产品,研发开发语言.采用技术框架基本上是百花齐放. 怎样让自家系统提供的服务具有跨平台.跨语言.跨各种防 ...
- BizTalk发布WS-Security的web services
最近做个项目,biztalk跟OTM(Oracle Transportation Management)系统做对接,双方通过web services通讯,这部分是BizTalk发布WS-Securit ...
- BizTalk调用WS-Security的web services
最近做个项目,biztalk跟OTM(Oracle Transportation Management)系统做对接,双方通过web services通讯,这部分是BizTalk调用OTM的web se ...
随机推荐
- HDU 4006 The kth great number 优先队列、平衡树模板题(SBT)
The kth great number Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65768/65768 K (Java/Oth ...
- 拓扑排序的经典题目 UVA1572
紫书172的例题: 题目大意:有n种正放形,每种正方形的数量可视为无限多.已知边与边之间的结合规则,而且正方形可以任意旋转和反转,问这n中正方形是否可以拼成无限大的图案 思路:首先因为是要无穷大,所以 ...
- jQuery + json 实现省市区三级联动
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- HTML 5终于定稿,八年后我们再一次谈谈怎么改变世界
我们第一次谈论 HTML5 要改变世界大概是因为乔布斯,他坚持在 iOS 上不兼容 Flash,在 Adobe 统治多媒体开发的那个年代,这需要付出极大的勇气.这么多年过去了,虽然所有人都在谈论 HT ...
- 三、MapReduce学习
MapReducer是一种编程模型,用于大规模数据集(大于1TB)的并行运算.概念"Map(映射)"和"Reduce(化简)" ...
- 微信小程序之----组件
1.view 把文档分割为独立的.不同的部分. view组件类似于html中的div标签,默认为块级元素,独占一行,可以通过设置display:inline-block改为行级元素. view.wxm ...
- Linux 下如何安装 JDK ,以 Ubuntu 为例。
http://www.cnblogs.com/memory4young/p/ubuntu-install-jdk.html 一.下载 首先,当然是要下载了. 地址:http://www.oracle. ...
- Linux文件编辑之sed命令
文件编辑之sed命令 sed是一种流编辑器,它是文本处理中非常重要的工具,能够完美配合正则表达式使用,功能不同凡响.处理时,把当前处理的行存储在临时缓冲区中,称为模式空间 (pattern space ...
- .NET运行机制
.NET运行机制 .NET框架是一个多语言组件开发和执行环境,它提供了一个跨语言的统一编程环境..NET框架的目的是便于开发人员更容易地建立Web应用程序和Web服务,使得Internet上的各应 ...
- CentOS Linux解决 Device eth0 does not seem to be present
通过OVF部署Linux主机后提示 ringing up interface eth0: Device eth0 does not seem to be present,delaying initi ...