SOA,面向服务器建构,是一款架构,这几年虽然没前几年那么流行,但是还是有很多企业在用,而Web Services是目前适合做SOA的主要技术之一,通过使用Web Services,应用程序可以对外发布服务,或者提供某项功能,Web Services 采用标准的XML报文,并使用SOAP传输数据

1、认识Web Services

Web Service 是简单可交互操作的分布式应用程序的新平台,它通过一系列标准和协议来保证程序之间的动态连接,其中最基本的协议包括SOAP、WSDL、UUDI

2、Web_service_call模式开发Web Services脚本

2.1新建Web Service脚本

先new一个web service 脚本,点击Create

然后进入Web Services脚本开发界面

然后点击“Manage Services”按钮,进入Web Services服务界面(此处主要不要把光标放到我上面这个图的位置,那样会报错的,函数体里面即“{}”里面)

然后输入我们自己准备好的免费的天气预报的WSDL地址:http://www.webservicex.net/globalweather.asmx?wsdl,然后点击导入“Import”按钮

各参数含义,见下图

Service name:表示Web服务的名称

WSDL:列出来wsdl的原始地址,最后一次更新的时间,同事也可以进行实时更新

Address:列出来web services服务的调用地址,选中“Override address”可以重写调用地址

Toolkit:关联的工具包

进入“Operations”标签页,如下图

改标签页列出了该服务的所有的接口,包括接口名称、端口名称、以及是否在脚本中使用等

进入“Connection Settings”标签页,如下图

该标签页主要是进行用户授权及代理配置,可以根据实际情况进行合理配置

点击“UDDI Data”标签页,如下图

UUDI是一种目录服务,可以使用它对Web Services进行注册和搜索,一般情况下在性能测试过程中,我们回去企鹅知道Web服务的位置,因此很少使用UDDI服务

然后点击ok按钮,保存设置

然后点击“Add Service Call”按钮,进入Web Services服务页面,依次选择"GetWeather"接口,该接口主要用户获取各地区的天气情况,然后依次点击CityName->Value,且在Value中填入城市:Shenzhen,

依次选择CountryName->Value,并在Value中填入:China

选择依次选择GetWeatherReslut->Save returned value in para,然后点击OK,LoadRunner将自动生成测试脚本

脚本如下图所示

源码脚本如下:

Action()
{
return 0; web_service_call( "StepName=GetWeather_101",
"SOAPMethod=GlobalWeather|GlobalWeatherSoap|GetWeather",
"ResponseParam=response",
"Service=GlobalWeather",
"ExpectedResponse=SoapResult",
"Snapshot=t1503660439.inf",
BEGIN_ARGUMENTS,
"CityName=Shenzhen",
"CountryName=China",
END_ARGUMENTS,
BEGIN_RESULT,
"GetWeatherResult=Param_GetWeatherResult",
END_RESULT,
LAST); }

  

深入解析Web Services的更多相关文章

  1. 使用 Spring 3 来创建 RESTful Web Services

    来源于:https://www.ibm.com/developerworks/cn/web/wa-spring3webserv/ 在 Java™ 中,您可以使用以下几种方法来创建 RESTful We ...

  2. (转) Web 建站技术中,HTML、HTML5、XHTML、CSS、SQL、JavaScript、PHP、ASP.NET、Web Services 是什么?

    Web 建站技术中,HTML.HTML5.XHTML.CSS.SQL.JavaScript.PHP.ASP.NET.Web Services 是什么? 建站有很多技术,如 HTML.HTML5.XHT ...

  3. Web Services 中XML、SOAP和WSDL的一些必要知识

    Web Services 是由xml来定义数据格式的,通过SOAP协议在各个系统平台中传输,那么接下来讨论下SOAP和WSDL的各自作用. SOAP和WSDL对Web Service.WCF进行深入了 ...

  4. Java与.NET 的Web Services相互调用

    一:简介 本文介绍了Java与.NET开发的Web Services相互调用的技术.本文包括两个部分,第一部分介绍了如何用.NET做客户端调用Java写的Web Services,第二部分介绍了如何用 ...

  5. 使用 Spring 3 来创建 RESTful Web Services(转)

    使用 Spring 3 来创建 RESTful Web Services 在 Java™ 中,您可以使用以下几种方法来创建 RESTful Web Service:使用 JSR 311(311)及其参 ...

  6. Spring 3 来创建 RESTful Web Services

    Spring 3 创建 RESTful Web Services 在 Java™ 中,您可以使用以下几种方法来创建 RESTful Web Service:使用 JSR 311(311)及其参考实现 ...

  7. QtSoap开发web services客户端程序

        首先需要下载QtSoap开源包,下载地址为: http://www.filestube.com/q/qtsoap+download, 我使用的是:qtsoap-2.6-opensource(不 ...

  8. Google Maps API Web Services

    原文:Google Maps API Web Services 摘自:https://developers.google.com/maps/documentation/webservices/ Goo ...

  9. loadrunner:web services接口测试

    本文以实例讲解web services接口测试操作,内容包括:脚本生成.参数化和接口与接口间的取值关联操作. 网站"http://www.webxml.com.cn/zh_cn/web_se ...

随机推荐

  1. 自定义android 音乐通知栏 ——可伸缩扩展

    Android custom notification for music player Example   In this tutorial, you will learn how to creat ...

  2. close() was never explicitly called on database

    在用SQLiteDatabase的时候如果碰到说database或者cursor没有关闭,可以在使用完之后加上: if (!cursor.isClosed()) { cursor.close(); } ...

  3. struts2通用标签

    Struts2框架为我们提供了很多标签,这些标签总体上可以分为两类:通用标签和UI标签.通用标签分为两类:数据标签和控制标签.数据标签用于访问值栈中数据,控制标签用于控制呈现页面时数据执行流程.使用S ...

  4. Python学习之旅—生成器与迭代器案例剖析

    前言 前面一篇博客笔者带大家详细探讨了生成器与迭代器的本质,本次我们将实际分析一个具体案例来加深对生成器与迭代器相关知识点的理解. 本次的案例是一个文件过滤操作,所做的主要操作就是过滤出一个目录下的文 ...

  5. c++ 头文件 及 sort 和 vector简单介绍

    c++  sort :http://www.16kan.com/post/997260.html http://wenku.baidu.com/view/e064166daf1ffc4ffe47ac6 ...

  6. lightoj 1025【区间DP】

    题意: 给出一个word,求有多少种方法你从这个word清除一些字符而达到一个回文串. 思路: 区间问题,还是区间DP: 我判断小的区间有多少,然后往外扩大一点. dp[i,j]就代表从i到j的方案数 ...

  7. bzoj 3238: [Ahoi2013]差异【SAM+树形dp】

    首先只有lcp(i,j)需要考虑 因为SAM的parent树是后缀的前缀的最长公共后缀(--),所以把这个串倒过来建SAM,这样就变成了求两个前缀的最长公共后缀,长度就是这两个前缀在parent树上的 ...

  8. pika消息中间件模块

    参考: http://www.rabbitmq.com/tutorials/tutorial-one-python.html http://www.rabbitmq.com/tutorials/tut ...

  9. Queue Sequence HDU - 4441

    码力不行啊... 错误记录: 171行后面对find2的使用错误,原来写的是p=find2(rt,p1),然后再加上一句能过样例但很假的特判 事实上,现在是要寻找最大的j,使得d2[1..j-1]=p ...

  10. centOS 部署服务器(二)

    (1)安装nginx 1.下载地址: http://nginx.org/en/download.html ,并解压到目录下 2.安装依赖包 yum -y install pcre*  yum -y i ...