深入解析Web Services

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);


}

  

posted @ 2017-08-25 19:41  谷白  阅读(383)  评论(0编辑  收藏  举报