一步步教你用LoadRunner测试WebService

合集下载

Loadrunner测试webservice协议总结

Loadrunner测试webservice协议总结

Loadrunner测试webservice协议总结Loadrunner测试webservice协议总结⼀、协议选择1、打开Virtual user generator,新建脚本,选择webservice协议2、当选择的协议不明确或者被测系统协议不明确时,使⽤loadrunner11⾃带的协议分析软件,⽂件->分析软件->分析应⽤程序,选择应⽤程序类型和路径确定即可,等待分析结果。

3、协议选择完毕后,进⼊脚本创建界⾯⼆、脚本创建1、导⼊服务管理服务->导⼊,输⼊被测服务的路径导⼊,确定2、添加调⽤程序1、添加服务调⽤->选择操作的⽅法名->填写输⼊参数和输出参数,确定后,会⾃动⽣成测试脚本Request:请求参数,输⼊对应的必填项Indentify:登录信息,ID和password对应⽤户名和密码Response:返回参数,将需要的参数保存在参数中,以备后续函数调⽤2、⽣成脚本界⾯3、需要对参数重新设置,选择“树”型显⽰⽅式,可以对脚本进⾏重新编辑4、对相应参数进⾏参数化,可以⽤记事本编辑5、运⾏时设置,快捷键F4运⾏逻辑:设置脚本迭代次数,即脚本循环次数思考时间:可以设置脚本运⾏过程中是否考虑思考等待时间其他:错误处理,⼀般选择出现错误时仍然继续3、返回结果判断1、单个返回结果判断例如,当我们调⽤Webservice接⼝输⼊如下参数时"<mobileno>133********</mobileno> <smscontent>飞信</smscontent>",接⼝正确返回结果包括"飞信是中国移动的业务"。

在此我们就需要对返回结果进⾏判断。

⽰例代码如下:lr_eval_string函数说明C的变量都不能被LR的函数直接调⽤。

所以:LR函数调⽤C变量,得先经过lr_eval_string的解析,相当于桥梁的作⽤。

使用Loadrunner测试webservice的三种途径

使用Loadrunner测试webservice的三种途径

使用Loadrunner测试webservice的三种途径近日研究了一下用Loadrunner测试webservice的三种方法:1. 方法一,调用webservice:一般采取Import wsdl的方式,在Manage Services中将wsdl文件或者访问地址导入,然后Add Service Call。

在添加过程中可以设定参数。

缺陷是如果连接的服务器有用户名和密码限制,可能连不上出错。

Action(){web_service_call( "StepName=sayHi2_101","SOAPMethod=HelloWorld2.HelloWorld2Port.sayHi2","ResponseParam=response","Service=HelloWorld2","Snapshot=t1297747716.inf",BEGIN_ARGUMENTS,"arg0=",END_ARGUMENTS,BEGIN_RESULT,END_RESULT,LAST);return 0;}2. 方法二,导入SOAP:采用Import Soap的方式,将xml文件导入。

URL写上不带wsdl的访问地址,此种方法可以写入用于连接服务器的用户名和密码。

Action(){soap_request("StepName=SOAP Request","URL=http://192.168.1.123/hello2","SOAPEnvelope=""<soap:Envelope xmlns:soap=\"/soap/envelope/\">""<soap:Header>""<soap:username>tttt</soap:username>""<soap:password>123456</soap:password>""</soap:Header>""<soap:Body>""<ns1:sayHi2 xmlns:ns1=\"http://server.hw.demo/\">""<arg0 xmlns=\"http://server.hw.demo/\">1</arg0>""</ns1:sayHi2>""</soap:Body>""</soap:Envelope>","SOAPAction=","ResponseParam=response","Snapshot=t1297753819.inf",LAST);return 0;}3. 方式三,利用HTTP协议访问。

LoadRunner测试流程

LoadRunner测试流程

1.3. 负载测试流程是什么?
测试分析->创建脚本->业务场景分析->创建场景->运行场景->监控场景-> 分析场景
2. LoadRunner 的安装 2.1.需要的安装软件:LR8.1(虚拟光驱版)
里面包含的文件列表如下截图:
2.2.安装步骤(安装前确保本机已装有虚拟光驱)
步骤一(非必须):如果本机以前装过 LoadRunner,先运行 lr 删除注册表,确保原来 lr 在注册表中的信息能够全部删除
3.6. 分析场景
分析场景是为了更深入的了解服务运行情况,发现服务的瓶颈,并解决服务性能问题。通常, 我们可以通过各种指标之间的关系来判断服务运行是否正常。例如随着并发用户数的增加每
秒事务数也应呈递增趋势,如果每秒事务数并没有随用户数增加,则可能在某些方面遇到瓶 颈,网络传输能力或者数据库连接池的限制都可能造成这种后缀为.lra 的 结果文件,里面有测试服务的测试结果和各种监 测指标的图示。点击 Reports 可以生成 LoadRunner 的性能测试报告。
步骤一:设置协议 点击菜单 Vuser->Run-time Settings->Toolkit Options,在 Emulation type 中选择 MS SOAP(不选的 话执行脚本的时候会报错)
步骤二:脚本的参数化 大多数脚本都是需要进行参数化的,参数化是为了保证测试数据的多样性,或者是出于实际 中业务特点的考虑,如在多线程并发存款的时侯,各线程之间存款的账户是不能相同的。 首先选中要参数化的币种常量,右键后在列表中选择 Replace with a parameter,出现对话框, 在 Parameter name 栏中换成有业务意义的参数名称便于维护,其他保持默认点击 OK

【测试方法】LoadRunner基于WSDL的WebService测试方法

【测试方法】LoadRunner基于WSDL的WebService测试方法

【测试方法】LoadRunner基于WSDL的WebService测试方法在《测试工程师的自我修养--理解WebService》一文中[1],对WebService的概念及其相关名词进行了阐述,并引入了一个测试案例:天气预报WebService服务[2]。

作为测试人员的你,假设现在接到一个测试任务,需要对WeatherWebService中的getWeatherbyCityName接口进行性能测试。

而开发人员只给你提供了WeatherWebService的WSDL的URL链接(/WebServices/WeatherWebService.asmx?WSDL ),然后啥也没说就消失不见了。

那么,采用测试工具LoadRunner该怎样对指定接口进行测试呢?本文将围绕如上测试需求,对LoadRunner基于WSDL的WebService测试方法进行详细介绍。

需要说明的是,本文只针对测试脚本的开发展开描述,对测试场景的设计暂不进行讨论。

本文中采用的LoadRunner版本为V11.0,不同版本可能会存在一定差异。

1、选择Web Services协议采用Loadrunner测试WebService时,在单协议里面选择Web Services即可。

当然,这并不意味着Loadrunner测试WebService 只能采用Web Services协议,在后续的文章中将向大家介绍如何通过HTTP协议来测试WebService。

2、导入WebService的描述信息WSDLWSDL 是基于XML 的用于描述WebService 以及如何访问WebService 的语言,它对具体的WebService 进行了描述,规定了服务的位置,以及此服务所提供的操作(或方法,或服务调用接口API)。

如果你熟悉WSDL的文档结构,可以直接阅读WSDL获取相关信息。

然而,当你尝试直接去阅读WSDL文档时,你会发现这是一件十分痛苦的事情,毕竟WSDL的设计出发点是供程序阅读的,其文档结构对人员的阅读体验不是很好。

LoadRunner测试步骤详细步骤

LoadRunner测试步骤详细步骤

LoadRunner测试步骤详细步骤录制测试脚本1).点击主界面2).点选新建协议3).在协议框中选择全部,选择新的协议Web测试一般选择(Web (HTTP/HTML))如果别的项目可根据与程序员交流程序间通讯的协议,在这里做选择就可以了4).填写你要测试的URL地址点击oK 后进行脚本录入1. 脚本的回放1).在这里可以对脚本进行参数化、集合点、事务等都可以在这里对脚本进行设置当脚本中回放时没有错误,就可一保存脚本,进行后面的压力测试了负载加压测试1).选择负载测试2.选择相对应的测试脚本手动场景可以设置不同的业务组用户数量,同时编辑计划指定相关的运行时刻,虚拟用户加载策略等完成场景的设计工作3).在这里进行场景设置4).虚拟用户数量及加载方式设置5)开始加载测试6)添加相应的监控指标7)添加Windows Resources 的监控1.双击 1图中的windowsResources2.在2图的空白处右击选择菜单中的Add..3.在3图中点击Add 后出现图44.在4图中输入要检测的见算计的IP 后点击 OK5.在图5中点击Add 选择你要检测的数据项后点击 Add 然后点击Close6.后点击图5的OK 就出现我们想要的监视图68)添加SQL Server 资源的监控在这里与添加WindowsResources步骤基本相同,只要注意几点1. 保证打开服务的远程服务(Remote Registry Service)打开,本地计算机加入了服务器域2. 要经过防火墙来监控Windows NT或 Windows 2000,应使用TCP,端口 139。

LoadRunner性能测试详细操作演示过程

LoadRunner性能测试详细操作演示过程

LoadRunner性能测试详细操作演示过程loadrunner性能测试演示过程目录1.loadrunner11基础............................................................................ (2)1.1术语............................................................................ ........................................................31.2组件与测试流程............................................................................ ....................................32.测试计划............................................................................ .. (4)2.1测试环境............................................................................ .................................................42.2应用程序建议............................................................................ ........................................42.3测试人员和时间............................................................................ ....................................53采用loadrunner展开功率/压力测试............................................................................ (5)3.1录制基本的用户脚本............................................................................ ............................53.2完善测试脚本............................................................................ (7)3.2.1填入事务............................................................................ ...................................73.2.2填入集合点............................................................................ ...............................83.2.3填入注解............................................................................ .................................103.2.4参数化输出............................................................................ .............................103.3单机运转测试脚本............................................................................ .............................154实行测试............................................................................ . (15)4.1选择脚本,创建虚拟用户............................................................................ .................154.2添加windows资源监视窗口............................................................................ .............194.3添加windows性能计数器............................................................................ .................194.4执行脚本............................................................................ (21)4.4.1分解成结果............................................................................ (21)5分析以及监视场景............................................................................ .. (22)5.1memory有关............................................................................ ........................................225.2processor有关............................................................................ ..................................255.3网络吞吐量以及频宽............................................................................ .........................285.4磁盘有关............................................................................ .............................................295.5web应用程序............................................................................ ......................................305.6sqlserver.......................... .............................................................................. .............315.7networkdelay................................................ ...............................................................316分析实时监控图表.....................................................................................................................327分析原则............................................................................ (32)7.1、错误提示分析............................................................................ ...................................337.2、监控指标数据分析............................................................................ ...........................338.测试结果............................................................................ . (35)1.loadrunner11基础loadrunner是一种预测系统行为和性能的工业标准级负载测试工具。

LoadRunner录制Web Services协议

LoadRunner录制Web Services协议

LoadRunner8.0的 Virtual User Generator录制Web Services协议存在一个bug,当服务器的操作系统是中文时,LoadRunner会自动将WSDL文件的头改为<?xml version="1.0" encoding="zh_cn"?>,当回放脚本时会报以下错误:Error: server returned an incorrectly formatted SOAP response因此在录制Web Services协议前,需要打两个补丁:LR80WebServicesFP1_setup.exelrunner_web_services_patch_1.exe录制:首先当然是选择Web Services协议了点击OK这里有两个选择,录制客户端程序或扫描WSDL文件,如果选择客户端程序,录制的是客户端实际的操作;如果选择扫描WSDL文件,则可自定义调用Web Service方法的顺序。

这里选择Scan WSDL File,点击Next输入WSDL的URL,比如Next,这时LoadRunner会将检测到的Web Service列出来,包括服务名和此服务提供的方法,选择需要录制的方法,并点击“>>”按钮,点击Next此处可对输入参数及输出结果进行设置,设置后点击Next可在此处设置Run-Time Setting,如果勾选“Run script after generation”,则生成脚本后自动回放,点击Finish,脚本录制完成。

LoadRunner8.0的在录制Web Services协议脚本时,出现以下问题,根据官方资料,需要下载2个补丁解决此问题:Error: server returned an incorrectly formatted SOAP response下载补丁:1 lrunner_web_services_patch_1.exe2 LR80WebServicesFP1_setup.exe注意事项:请严格按上面的顺序安装安装完成后,LoadRunner安装程序中将出现如下图所示,表明安装成功:准备WSDL文件:在IE里输入地址:http://XXX/webservices/XXX.asmx?wsdl打开WSDL文件后,点击“另存”按钮,保存文件为 .wsdl 格式LoadRunner,录制脚本,选择Webservice协议如下图所示:选择Scan WSDL File如图选择Specify WSDL for Scanning中的从File指定,如本文作者调用XXX.wsdl文件如图接下来下一步哦,View the Validation report接下来选择对应的方法接下来Provide values for the Web Service methods点击下一步后,成功了,当然你也可以在这设置Run-Time Setting经过以上操作,脚本开发完毕最近刚做的一个性能测试,使用webservice协议,想把这些东西总结一下,因为之前做性能很少,所以有什么说的不对的地方,还请大家给纠正。

LoadRunner基本使用流程及结果分析(图文)(2021整理)

LoadRunner基本使用流程及结果分析(图文)(2021整理)

一、录制脚本1. 翻开2. 点击编辑脚本3. 点击按钮新建脚本4. 弹出对话框,选着web〔/html〕5. 输入网址,点击ok6. 录制脚本,录制结束后,点击一下按钮停止录制7. 录制成功后,生成脚本8. 点击如下按钮回放脚本9. 点此按钮,可新增action10. 点此按钮可以进行录制和回放设置11. 弹出的参数话界面一般回放设置下这里就好12. 点击图中图表设置参数化13. 弹出的设置界面,主要设置红色区域的几个地方14. 下列图按钮为脚本调试15. 下列图按钮为设置时间的其实点和结束点的按钮16. 下列图两个按钮分别为与hp质量管理工具ALM连接按钮和创立场景按钮17.插入事件,分别表示时间的开始和结束事件插入成功:18. 设置集合点二、创立场景1.在vugen中点击图中按钮创立场景2.弹出编辑框,设置场景,设置完成后点击ok第一个是目标场景第二个是手动场景其中手动场景可以设置加载虚拟用户数3.双击这里选着加压主机4.选择主机ip,和系统5.点击ok关闭对话框图中红色区域是选着场景执行方式:模拟真是环境还是基于时间表模拟6.下列图中:1)Schedule by选项表示加载方式,基于脚本还是基于组2)Run mode表示加载模式:分别表示模拟真实情况和还是基于场景7.双击下列图红色区域,可选着加压力度8.双击红色区域,可设置压力下完运行时间9.双击下面红色的内容,可以选着虚拟用户停止的模式10.弹出设置选项框,可以选着停止的方式全部一下停止每多少时间停止多少个的方式停止11.点击run,来到执行界面12.在执行界面点击start Scenario,开始跑场景13.下列图为执行过程中14.场景跑完后显示如图界面:其中右边红色区域是运行过程中监控效劳器的资源占用率等等的一些信息,在左边还可以添加或查看其他的一些图标15.点击下面按钮也能添加加压主机16.经15后,弹出选项框,点击add可以输入主机信息17.设置ip欺骗三、结果分析1.点击下面按钮,进入分析结果界面2.分析界面如下:3.点击这里的图表可以查看各结果的,然后对结果进行分析4.按照如下操作可以增加新的图表5.右键图表选着合并图表,可以合并分析6.合并后的图表具体实例教你如何做LoadRunner结果分析LoadRunner 最重要也是最难理解的地方--测试结果的分析.其余的录制和加压测试等设置对于我们来讲通过几次操作就可以轻松掌握了.针对Results Analysis 我用图片加文字做了一个例子,希望通过例子能给大家更多的帮助.这个例子主要讲述的是多个用户同时接管任务,测试系统的响应能力,确定系统瓶颈所在.客户要求响应时间是1 个人接管的时间在5S 内.2.系统资源:2.1 硬件环境:硬盘:100G网络环境:100Mbps2.2 软件环境:操作系统:英文windowsXP效劳器:tomcat 效劳系统结构:B/S 结构下面要讲述的例子添加了我们平常测试中最常用到的一些资源参数.另外有些特殊的资源暂时在这里不做讲解了.我会在以后相继补充进来。

用LoadRunner模拟向webservice发送XML格式的信息

用LoadRunner模拟向webservice发送XML格式的信息

用Loadrunner模拟向Web Service发送XML格式的信息包作者:卡卡卡由于测试的对象需要和其他信息系统交互,所以采用了比较常用的web services的方式交换数据。

1)测试目标:通过loadrunner录制/编写脚本,模拟向服务器的web service相应的端口发送数据包,达到测试跨平台的数据交换。

2)使用LoadRunner较新的版本12.0.2。

首先,笔者尝试了用Loadrunner录制web service脚本向服务器发送数据包---失败,没有录到,脚本位空。

后来改用通过向导,自己写LR脚本。

Step1:选择脚本协议Single Protocol---Web Services.Step2:添加WSDL点击工具栏上的“add web service call”按钮,然后在弹出的对话框中输入或者通过浏览器浏览响应的IP地址加端口,导入指定的wsdl。

成功后,在operation下来框里看到web service的各个可以调用的方法。

Step3: add a web service call点击脚本中的Action方法,在return 0 语句之前,添加web service服务下面可用的方法。

在New Web Service Call 窗口中,点击“Operation”下拉框,选中看一个服务提供的调用方法。

Step4:添加inputXML的值在开打的New Web Service Call窗口中,选择输入参数inputXML,点选Value,在输入框里随便输入点字符(接下来脚本中,会参数化)。

Step6:同上一步,输入return的值选择输出参数中的SubmitNLSMSRequesetResult后,勾选Save returned value in param。

参数名用默认的即可。

Step7:编译和调试脚本在输入参数XXX的地方,用正确的XML格式的数据包替换。

在返回参数的地方,增加判断语句,如果返回的参数为成功,脚本继续,如果失败可以尝试再次发送等。

webservices压力测试总结_板栗

webservices压力测试总结_板栗

webservices压力测试总结一、项目简介1、测试环境:WebServices + SSL(ssl证书链),采用SOAP协议数据库服务器通过IE的80端口下载一个反射器到客户端,产生客户端进程。

客户端通过用户交互,从服务器IIS反射所需的业务组件。

业务组件通过WebService和服务端通讯,通过在客户端构建纳税户对象,将业务所需的敏感数据加密后,经由WebService传递到服务器端。

服务器将数据解密后在服务端进行业务处理。

分捡出需要银行处理的业务通过Socket发送到地税前置机。

地税前置机将业务数据编码成符合银行要求的8583包格式,发送到银行前置机进行处理。

并等待银行返回业务处理结果。

地税前置在收到银行返回的处理结果后将完成自身业务处理后返回WebService处理结果。

WebService将最终的处理结果返回给用户。

用户通过客户端表示层得到此次业务的处理结果。

2、开发工具:c# .net3、数据库:sybase4、压力测试工具:LoadRunner8.0(LR7.8的license)二、录制脚本5、下载WSDL文件在IE里输入地址:http://192.168.0.127/webservices/taxwebservice.asmx?wsdl打开WSDL文件后,点击“另存”按钮,保存文件为.wsdl 格式6、选择Web Services 协议7、Scan WSDL File8、Specify WSDL for scanning9、选择方法10、Specify argument values11、Start Record点击“Start Record”按钮12、Specify application to record13、调用程序开始录制三、SSL配置14、Recording Options(Ctrl+F7)15、Port Mapping16、点击“New Entry”补充:定义端口映射VuGen 使用“端口映射”设置,通过特定的服务器: 端口组合将流量定向到需要的通信协议。

LoadRunner测试要求及详细步骤

LoadRunner测试要求及详细步骤

LoadRunner测试要求及详细步骤测试要求:1、测试系统支持100个并发同时登录2、登录功能响应时间不超过5秒3、CPU使用率不超过80%4、内存使用率不超过75%并发:很多人在一起做相同的事情在某一时间点的并发,在某时间点一个人代表了很多人的动作,是指在某时间段内一个人重复做某件事,重复100次。

不止做一件事,而与设置的时间有关。

并发与业务:集合点:当所有并发都完成某个动作时才做下一个动作,这样对服务器的压力才最大想测试50个人一起提交时对服务器的压力有多大不够50个人则等待,直到人数达到50个人才提交当所有的人都完成某个动作后再提交一般在提交动作之前设置一个集合点事务:LoadRunner中的事务(transaction)事务:事务是要度量其服务器响应时间的任务或操作集。

一个完整的事务是由事务开始、事务结束以及一个或多个业务操作/任务构成。

形式如图1-5所示:图1-5(一个事务示例代码段)插入一个事务有两种方式来实现,一种是手工方式,另外一种是利用菜单或者工具条进行事务的添加。

手工方式要求编写脚本人员必须十分清楚脚本的内容,在合适的位置插入事务的开始和事务的结束函数。

另外一种方式,应用菜单或者工具条进行添加相对来说操作方法简单一些,首先切换到脚本树视图,参见图1-6,而后通过菜单或者工具条添加事务开始和事务结束,参见图1-7。

图1-6(工具条相关按钮)图1-7(事务相关菜单选项和工具按钮)【作者提示】1.事务必须是成对出现,即:一个事务有事务开始必然要求也有事务结束。

2.事务结束函数共包括两个参数,第一个参数是事务的名称,第二个参数是事务的状态。

事务状态可以为LR_PASS:返回“Succeed”返回代码;LR_FAIL:返回“Fail”返回代码;LR_STOP:返回“Stop”返回代码;LR_AUTO:自动返回检测到的状态。

在应用事务的过程中,不要将思考时间(lr_think_time函数)放在事务开始和事务结束之间,否则在回放思考时间设置被允许的情况下,思考时间将被算入事务的执行时间,从而影响了对事务正确的执行时间的分析与统计。

loadrunner针对WebService性能测试

loadrunner针对WebService性能测试

Loadrunner针对CA性能测试使用方法本次CA功能测试,运用的是Web Services提供的接口对CA的功能进行测试。

Loadrunner 根据WSDL 描述,会生成一个SOAP 请求消息发送Web Services 请求处理。

请求处理器解析收到的 SOAP 请求,生成相应的 SOAP 应答。

Web 服务器得到 SOAP再把信息送回到Loadrunner。

创建脚本打开Loadrunner,选择Create/Edit Scripts,如下图进入界面选择如下图中红框内的New Scripts在弹出的对话框中选择Web Services,单击Create这样,一个新的空脚本就已经创建好了,如下图编写脚本编写登陆语句在脚本中输入:web_set_certificate_ex("CertFilePath=D:/123.pem","CertFormat=PEM","KeyFilePath=D:/123.pem","KeyFormat=PEM","Password=111111",LAST);web_set_certificate_ex是身份验证函数,指定证书和密钥文件的位置和格式信息。

后面这段语句是在连接CA时进行读取证书的动作可以将等号后面的内容改成自己对应的项目。

有了这段语句,就可以同CA正常连接了。

因为Loadrunner只支持pem格式证书,所以需要一张PEM格式的证书,已经上传到SVN\test\project\CA\CA3.0\CA3.0.1\CA3.0.1性能测试\CA3.0性能测试相关文件目录下添加CA功能如下图,单击Manage Services来添加WSDL文件。

这里的WSDL文件是从CA的SOA服务获取来的,在本地以WSDL格式保存。

WSDL文件已经上传到:SVN\project\CA\CA3.0\CA3.0.1\CA3.0.1性能测试\CA3.0性能测试相关文件\WSDL在打开的对话框中单击Improt,如下图在弹出的对话框中选中File,输入或者选择WSDL文件的存放路径,如下图单击又下角的Import,如下图,对话框中显示出WSDL的相关信息单击OK,回到编写脚本界面,单击Add Service Call如下图,在弹出的对话框中,红框内的Operation选项为CA提供的功能如下图,以本次测试内容为添加并签发证书,在Operation中选择applyDownCert,在左边的红框内选择签发证书时需要填写的内容选择pkcs10,在右边红框出选中Include argument in其他签发证书需要的输入项添加方法同上,选择完毕单击右下角的OK,回到脚本编写界面如下图在红框内输入签发证书需要的相应参数现在,一个证书签发的脚本就编写成功了。

如何用LoadRunner 测试 WebService

如何用LoadRunner 测试 WebService

现在基于Web Service的应用开始越来越多,因此使用LoadRunner测试Web Service的可能性越来越大。

Web Service可以在很多协议上跑,但是使用最多的还是使用SOAP协议,SOAP协议在LoadRunner中是支持的,而SOAP是建立在HTTP协议之上的,所以也可以使用HTTP协议测试Web Service应用。

由于坊间广为流行的,深受人民群众喜爱的LoadRunner破解License是两个类型的,一个是100Vu的全协议的,一个是10000Vu的HTTP 协议的,所以如果测试非HTTP协议的应用,就会受到100Vu的限制。

如果把非HTTP协议的测试转化成HTTP协议的测试,从而可以使用10000个并发,这是具有重要现实意义的一个事情。

在测试SOAP协议应用的时候,如果并发Vu超过100,就应该用10000个Vu的License。

下面两个脚本是分别用SOAP协议和HTTP 协议。

两者的区别就是两个函数:soap_request和web_custom_request的区别。

需要注意的是:这两个脚本由于比较简单,都不是录制下来的,而是直接编写的。

函数中的xml文件的内容是通过应用服务器(我们使用的是WebLogic)后台查询得到的。

即先从浏览器执行一个SOAP调用,然后在后台找到该调用发出的xml文件的内容,然后再拷贝到LoadRunner的脚本中得到的。

==============================SOAP协议====================================Action(){web_add_header("SOAPAction","\"\"");web_add_header("User-Agent","XML Spy");web_add_header("Content-Type", "text/xml");lr_start_transaction("同步调用同步");soap_request("StepName=ServiceRequest","URL=http://172.16.1.222:7001/servicebusWeb/cn/com/jsepc/soa/platform/bus/gateway/""GatewayWebServiceV10.jws","SOAPEnvelope=<?xml version=\"1.0\" encoding=\"zh_cn\" standalone=\"no""\"?><SOAP-ENV:Envelope xmlns:SOAP-ENV=\"/""soap/envelope/\" xmlns:SOAP-ENC=\"/soap/""encoding/\" xmlns:xsi=\"/2001/XMLSchema-instance\" ""xmlns:xsd=\"/2001/XMLSchema\">\r\n\t<SOAP-ENV:Body>\r""<service xmlns=\"/soa/service/v1_0\"""xmlns:v1=\"/soa/webservice/interface/v1_0\">""\n\t\t<v1:ServiceRequest>""<v1:RequestHead>""<v1:Head><v1:Name>SOA_ServiceCode</v1:Name><v1:Value>Test.TimeService.Bus1</v1:Value></v1:Head>""<v1:Head><v1:Name>SOA_Operation</v1:Name><v1:Value>service</v1:Value></v1:Head>""</v1:RequestHead>""<v1:RequestBody>""<answer xmlns=\"\">""<person>EPC1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890 </person>""</answer>""</v1:RequestBody>""</v1:ServiceRequest></service>""</SOAP-ENV:Body>\r\n<""/SOAP-ENV:Envelope>\r\n","Snapshot=t1.inf","ResponseParam=result",LAST);lr_end_transaction("同步调用同步", LR_AUTO);*************************************************************************************************==============================HTTP协议====================================#include "web_api.h"Action(){web_add_header("SOAPAction","\"\"");web_add_header("User-Agent","XML Spy");web_add_header("Content-Type", "text/xml");lr_start_transaction("webservice");web_custom_request("soap","URL=http://172.16.1.222:7001/servicebusWeb/cn/com/jsepc/soa/platform/bus/gateway/GatewayWebServiceV10.jws", "Method=POST","Resource=0","RecContentType=text/xml","Mode=HTML","EncType=text/xml; charset=utf-8","Body=<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no""\"?><SOAP-ENV:Envelope xmlns:SOAP-ENV=\"/""soap/envelope/\" xmlns:SOAP-ENC=\"/soap/""encoding/\" xmlns:xsi=\"/2001/XMLSchema-instance\" ""xmlns:xsd=\"/2001/XMLSchema\">\r\n\t<SOAP-ENV:Body>\r""<service xmlns=\"/soa/service/v1_0\"""xmlns:v1=\"/soa/webservice/interface/v1_0\">""\n\t\t<v1:ServiceRequest>""<v1:RequestHead>""<v1:Head><v1:Name>SOA_RequestTime</v1:Name><v1:Value>{CurrentTime}</v1:Value></v1:Head>""<v1:Head><v1:Name>SOA_ServiceCode</v1:Name><v1:Value>Test.TimeService.Bus1</v1:Value></v1:Head>""<v1:Head><v1:Name>SOA_Operation</v1:Name><v1:Value>service</v1:Value></v1:Head>""</v1:RequestHead>""<v1:RequestBody>""<answer xmlns=\"\">""<person>EPC12345678901234567890123456789012345678901234567890123456789012345678901234567890</person>""</answer>""</v1:RequestBody>""</v1:ServiceRequest></service>""</SOAP-ENV:Body>\r\n<""/SOAP-ENV:Envelope>\r\n",LAST);lr_end_transaction("webservice", LR_AUTO);return 0;}*************************************************************************************************如果网友从事这种类型的测试,你的脚本和我提供的脚本的惟一的不同就是脚本内部的xml文件的不同,你可以参考我提供自己从后台应用服务器,譬如WebLogic、Websphere、JBoss等常见服务器中获得。

Webservices压力测试详细介绍

Webservices压力测试详细介绍

LoadRunnner下的Webservices压力测试过程一、概念介绍A、webservices压力测试网上介绍:/html/75/n-159175.html/s/blog_51dc0fba0100amyj.html/html/79/n-98479.html在进行性能测试时,大部分对Web性能测试,选择“Web(HTTP/HTML)”协议即可,但录制完脚本后,回放脚本过程中有时会发生中断或停止的情况,查看错误时,如果无法找到SOAP文件字样时,就需要考虑更换脚本录制协议了。

通常首先考虑更换Web Services协议,再次录制脚本,问题就相应解决了。

在录制Web Services脚本前,首先对Web Services做一个简要的介绍,这样有助于读者或者测试人员能够更好地利用Web Services协议录制脚本。

1.什么是Web ServicesWeb Services是一种构建应用程序的普通模型,并能在所有支持Internet通信的操作系统上实施运行。

Web Services令基于组件的开发和Web的结合达到最佳,基于组件的对象模型,如:分布式组件对象模型(Distributed Component Object Model, DCOM)、远程方法调用(Remote Method Invocation, RMI)、互联网内部对象请求代理协议(Internet Inter-Orb Protocol, IIOP)都已经发布很长时间,但是它们都依赖于特殊对象模型协议。

而Web Services利用SOAP和XML对这些模型在通信方面作了进一步的扩展,以消除特殊对象模型的障碍。

进一步地,Web Services还基于HTTP和SOAP协议,使得Web用户通过Web调用的方法使用SOAP 和HTTP来调用远程对象,确保业务数据得以在Web上传输。

2.Web Services结构客户根据WSDL描述文档,会生成一个SOAP请求消息。

LoadRunner下WebService测试的若干问题

LoadRunner下WebService测试的若干问题

L o a d R u n n e r下W e b S e r v i c e测试的若干问题(总13页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--LoadRunner下WebService测试的若干问题前提条件:官方下载,的licenseWindows2000简体中文版一.测试的录制方法:(板栗在《webservices压力测试总结》已经讲过这一部分,已经了解的朋友可以不看1这一部分)1)选择协议2)下载WSDL用IE或者其他浏览器下载WSDL,这里以为例子,保存到本地为WSDL格式。

在下面的File中选择该WSDL文件。

3)选择WSDL下一步,在方法中选择GetUKLocationByTown,点击>>,加入到右边4)输入参数点击下一步,点击左边的Town,在右边输入London,然后下一步5)设置代理点击Run-Time Settings,选择代理服务器的获取方式,点击下一步,6)运行教本然后脚本自动开始运行,录制的位置是vuser_init方法中,并且运行的结果有错误。

错误是server returned an incorrectly formatted SOAP response,后面讲错误解决的方法和可能的原因。

注意:在中错误信息不一样,好像是什么xBase编码类似的错误。

7)录制总结:到这里,教本的录制已经结束了,和的WebService相比,流程有了一定的变化,而且功能好像变弱了(这个是从官方网上下载的,用的的license),在中有可以选择录制协议为SOAP方式还是WebService的,里却没有。

而且没有有录制到的位置,中忘记有没有了。

二.server returned an incorrectly formatted SOAP response问题的解决1)修改运行设置在运行设置中,选择LOG,然后勾上扩展日志,并且选中下面的三个选项2)运行教本,查看日志查看脚本就可以发现,其实结果已经正常返回,但是在SOAP响应的头部,有一个可疑的部分,<xml version="" encoding="zh_cn">,可疑是因为我用另外一个例子实验过,服务器端返回的encoding为UTF-8的方式,不是zh_cn 的方式。

loadrunner简单使用——HTTP,WebService,Socket压力测试脚本编写

loadrunner简单使用——HTTP,WebService,Socket压力测试脚本编写

loadrunner简单使⽤——HTTP,WebService,Socket压⼒测试脚本编写使⽤loadrunner进⾏压⼒测试主要分两步,第⼀步是编写脚本(⽐较重点),第⼆步执⾏测试(配置都是在界⾯上点点就⾏了,当然我只的是⽐较简单的,能满⾜⽇常需要的),第三步分析结果(这⼀步⽐较⾼深,但是对于我来说能看懂简单的性能指标就OK了)。

所以这⾥就说⼀下脚本的编写,给未来再⽤到做参考。

Action(){int status;lr_start_transaction("send");web_reg_find("Search=Body",//这⾥说明在Body的范围内查找"SaveCount=ret_Count",//这⾥表⽰把返回值的个数放在变量ret_Count⾥"Text=mobile",//这⾥表⽰查找的内容是“mobile”LAST);status=web_url("Baidu_Search","URL= /s?wd=mobile","TargetFrame=Main","Resource=0","RecContentType=text/html","Mode=http",LAST );lr_output_message("Request Status:%d",status);lr_output_message("查找到的返回值个数:%d",atoi(lr_eval_string("{ret_Count}")));if (atoi(lr_eval_string("{ret_Count}")) > 0){//这⾥判断检查到的个数lr_output_message("Rec successful.");lr_end_transaction("send", LR_PASS);}else{lr_error_message("Rec failed");lr_end_transaction("send", LR_FAIL);}return0;}2.HTTP POST请求这个是在我们项⽬中⽤到的,发送POST请求,进⾏⾃然语⾔识别的,脚本如下:Action(){int status;lr_start_transaction("send");web_reg_find("Search=Body",//这⾥说明在Body的范围内查找"SaveCount=ret_Count",//这⾥表⽰把返回值的个数放在变量ret_Count⾥"Text=t",//这⾥表⽰查找的内容是“t”LAST);status=web_submit_data("trs","Action=http://192.168.77.185:9002/recognizeText",//地址"Method=POST",//POST请求"RecContentType=text/html","Mode=HTML",ITEMDATA,"Name=usercontent","Value=gprs",ENDITEM,//这⼀⾏表⽰传⼊⼀个参数usercontent,值为gprs"Name=Accept","Value=text/plain",ENDITEM,LAST);lr_output_message("Request Status:%d",status);if (atoi(lr_eval_string("{ret_Count}")) > 0){//这⾥判断检查到的个数lr_output_message("Rec successful.");lr_end_transaction("send", LR_PASS);}else{lr_error_message("Rec failed");lr_end_transaction("send", LR_FAIL);}return0;}3.WebService请求webservice请求的脚本建议通过可视化的⽅式添加1)引⼊webservice,注意wsdl后缀2)给⼊参填值3)给返回值指定存储到的变量中Action(){int status;lr_start_transaction("send");status=web_service_call( "StepName=getSupportCity_102","SOAPMethod=WeatherWebService|WeatherWebServiceSoap|getSupportCity",//这⾥是我已经引⽤了webservice的名称及调⽤⽅法"ResponseParam=response","Service=WeatherWebService","ExpectedResponse=SoapResult","Snapshot=t1353067092.inf",BEGIN_ARGUMENTS,"byProvinceName=安徽",//这⾥是⼊参,参数名称:byProvinceName,值:安徽。

loadrunner,服务水平协议

loadrunner,服务水平协议

loadrunner,服务水平协议竭诚为您提供优质文档/双击可除loadrunner,服务水平协议篇一:用loadRunner测试webservices协议uRl:译者:huiguiziran111原作者:waldemar前不久,如何用loadrunner做webservices测试http/html脚本。

现在我想要描述的正确方法-用webservices测试脚本。

首先需要一个webservices网址,并且是可以使用的网址。

这是一个wsdl的地址:我希望parasoft不要介意我使用的soat测试。

另外,我们要有一份wsdl文件。

现在让我们创造的脚本。

点击新建/从脚本协议中选择webservices脚本类型现在,当我们新建一个脚本,都会产生一个新的标准的工具栏。

他允许添加webservice中描述的脚本文件,可以显示xml请求数据和返回的数据。

所以点击管理服务,接着导入,在uRl中输入/store-01.wsdl,点击导入接着wsdl文件已经导入,直接点击应用和确定。

在这里loadrunner把webservice引用的参数全部列举。

我们准备创建2个实际请求数。

在工具栏中,实现2个操作,一个是“增加呼叫服务”,另外一个是导出soap点击addservicecall。

在operation的下拉列表中选择getitembyid,在左边的输入参数列表中选择id然后在右边的类型的编辑框中输入1我们的脚本如下所示:1.action()2.{3.web_service_call("stepname=getitembyid_101",4."soapmethod=cart|icart|getitembyid",5."Responseparam=response",6."service=cart",7."expectedResponse=soapResult",8."snapshot=t1248415874.inf",9.begin_aRguments,10."id=1",11.end_aRguments,12.begin_Result,13.end_Result,st);15.return0;16.}现在我们增加一个webservice请求导入soap中。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档