基于WebService的性能测试脚本开发

上一篇 / 下一篇  2012-08-27 10:31:19 / 个人分类:性能测试

8I/F+S'b}0R0  WebService是一种构架应用程序的普遍模型,是系统对外的接口。可以在任何支持网络通信的操作系统中实施运行。WebService的主要目标就是实现应用间的跨平台的互操作。WebService可以使系统中孤立的站点之间能够相互通信、共享资源而提出的一种接口。Web Service所常用的协议标准,包含如HTTP、XML、SOAP、WSDL等,选择WebService协议进行测试,可以使服务的客户端与系统提供的服务本身之间进行紧密耦合,达到测试的要求。51Testing软件测试网)@lu*[1] MQXT

51Testing软件测试网s^8T6@u ITf u

  本文以一个基于webservice的文件下载功能服务为例,运用Loadrunner 11 对其进行性能测试脚本开发和调试,具体操作流程如下所示:

k.rddT Wk Y ?Q051Testing软件测试网 j5d}|as

  首先,选择WebService协议进行脚本录制。

Af `e&cdB J0

51Testing软件测试网i(j []Ua3ZQ$Xe

   点击“Manage Service”按钮,然后选择“Import”。在Importservicre中的URL导入一个WSDL服务的文本 http://wsefrst.paerswft.com/store-01.wsdl,点击“Import”。其中,WSDL描述WebService 的公共接口。这是一个基于XML的关于如何与Web服务通讯和使用的服务描述,也就是描述与目录中列出的WebService进行交互时需要绑定的协议和 信息格式。通常采用抽象语言描述该服务支持的操作和信息,使用的时候再将实际的网络协议和信息格式绑定给该服务。51Testing软件测试网!gR"M }9i9[6De

r"{p;kQ0

   因此在Loadrunner在WebService虚拟用户协议中也支持两种测试方式:一种是通过“Add Service Call”的方式,此功能导入的是WSDL文件;一种是通过Import SOAP的方式,Import SOAP的方式需要导入定义好的XML请求文件。在本文中应用前一种导入WSDL文件的方式。

d$vrnqY]o\0

6z(q[-q2m*u051Testing软件测试网U~EjG

  下面对被测服务进行参数化,点击“Add Service Call”选择调用接口,对WSDL文件中的参数,进行参数化赋值和选择相应动作。如下图,在选择相应的测试机service后,这里选择“down”下 载这个动作,并进行参数化赋值。关于参数化赋值方法,可以勾选住“Include argument in”在“Vaule”输入框中进行常量赋值和变量参数化,变量参数化点击蓝色“ABC”即可,同时可以生成运行脚本,本文针对guid进行参数化,生成 2个脚本,一个是guid=111的常量参数化,一个是guid={guid}的变量参数化操作。对guid变量参数化,参数策略为select next row:Unique,Update value on:Each iteration。其中, GUID即Globally Unique Identifier(全球唯一标识符)。GUID是一个通过特定算法产生的二进制长度为128位的数字标识符,用于指示产品的唯一性。

k OK:e6~3O-s0

&O.Ekbl+]-?0

  具体脚本如下所示:

0]h+i iq0

51Testing软件测试网+a u(t IXb

r~;}x}#F7Od'L0Action()51Testing软件测试网%h(u,Ga&h1X"RB
{
"Q#o M(BM;M!e0         web_service_call( "StepName=down_101",51Testing软件测试网:Jrpt'C*P
                   "SOAPMethod=T9EsbServiceService|T9EsbService|down",51Testing软件测试网v],?XE$t3?
                   "ResponseParam=response",
;n/k(E(Hz_S I)k0                   "Service=T9EsbServiceService",
/Qz| o|'JIh0                   "ExpectedResponse=SoapResult",51Testing软件测试网j&k-K's+cOj%A
                   "Snapshot=t1344414497.inf",51Testing软件测试网(o@`&JM3F*B_-x
                   BEGIN_ARGUMENTS,51Testing软件测试网%H@7Wh3W_k\
                   "guid=111",51Testing软件测试网e},s&QQ
                   END_ARGUMENTS,51Testing软件测试网]ND)`/R'TH\x
                   BEGIN_RESULT,51Testing软件测试网$KG#K ag)e
                   END_RESULT,
EvM"p0bz4k0                   LAST);

YEf/uo#O!m1@0

qn!iZ4u`*U,g0         web_service_call( "StepName=down_102",51Testing软件测试网+Y!m/Z qP
                   "SOAPMethod=T9EsbServiceService|T9EsbService|down",51Testing软件测试网nT6Z1}(p^-C
                   "ResponseParam=response",51Testing软件测试网1gQ w1_a,~
                   "Service=T9EsbServiceService",51Testing软件测试网9[|F?wx;RB
                   "ExpectedResponse=SoapResult",
8q5k*B\r6?R `2IW;~0                   "Snapshot=t1344414875.inf",
LbT+A.[PJ0                   BEGIN_ARGUMENTS,51Testing软件测试网"_"uX N0n%H z1H(H
                   "guid={guid}",51Testing软件测试网.e s1xU s#zPu
                   END_ARGUMENTS,
|I2ue,KH J e&d0                   BEGIN_RESULT,
@|%L4]X4H0                   END_RESULT,
Y1r/aMM.ng#U0                   LAST);51Testing软件测试网%g,Au.h4TRa$Y
         return 0;
G0PJU8\/GD0}
51Testing软件测试网D1PB"AbY g)L


TAG:

 

评分:0

我来说两句

Open Toolbar