Loadrunner_Web Services协议操作指南

  1. 目的

本文档的目的是主要针对loadrunner性能测试工具Web Services协议的详解。达到性能测试的便捷性有效性。

  1. 特性

Loadrunner,是一种预测系统行为和性能的负载测试工具,可适用于各种体系架构的自动负载测试,能预测系统行为并评估系统吸能。Loadrunner性能测试工具涉及多种协议的测试,一般最常见的协议有http协议,Web Services协议,sockets协议等,本文档主要针对Web Services协议进行详解。

Web Services是建立可交互操作的分布式应用程序的新平台,它通过一系列的标准和协议来保证程序之间的动态连接。其中最基本的协议包括soap,wsdl,uddi。

  1. Web Services协议测试方法

1.本LoadRunner性能测试Web Services协议模板脚本,取自实例“XX系统”。

2.由项目组提供请求报文,将报文转为.xml后缀文件,进入LoadRunner,点击Import SOAP,将报文导入luadrunner,填写系统访问地址,导入。

3.在已导入的脚本中添加事物名,可执行报文是否成功。

4.Web Services协议脚本通常有固定的格式,如脚本中,"<arg0>"-"</arg0>"中间注释项为导入的请求报文,其余代码为固定访问格式。

5.脚本中有用到关联法,来获取到报文中返回的请求值,获取请求值并判断返回值是否为成功。文中关联代码如下,lr_xml_extract为web services协议关联函数,response为请求报文的返回内容。

lr_xml_extract("XML={response}",
            "FastQuery=/Envelope/Body/getPolicyResponse",
            "XMLFragmentParam=ParamXml_getPolicyResponse",
            LAST);

6.Web Services协议可不进行关联,直接取报文中response值进行输出判断。

7.脚本if语句为判断方法,使用到的判断函数为strstr,主要使用方法为,检索报文返回信息中是否包含判断项,如下为判断代码:

if (strstr(lr_eval_string("{ParamXml_getPolicyResponse}"),"成功")!=NULL) {
    lr_end_transaction("webserver报文模板", LR_PASS);
  }
  else{
    lr_end_transaction("webserver报文模板", LR_FAIL);
    lr_error_message("webserver报文模板=%s", lr_eval_string("{ParamXml_getPolicyResponse}"));
  }

 

 

实例:

Action()
{
lr_start_transaction("webserver报文模板");
    
    soap_request("StepName=SOAP Request", 
        "URL=http://XXXXXXX", 
                 //"URL=http://XXXXXXX",
        "SOAPEnvelope="
            "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:elec=\"http://electronPolicy.webServices.ciitc.com/\">"
                "<soapenv:Header></soapenv:Header>"
                "<soapenv:Body>"
                    "<elec:getPolicy>"
                        "<arg0>"
                           报文
                        "</arg0>"
                    "</elec:getPolicy>"
                "</soapenv:Body>"
            "</soapenv:Envelope>", 
        "SOAPAction=", 
        "ResponseParam=response", 
        "Snapshot=t1547804174.inf", 
        LAST);
    lr_xml_extract("XML={response}",
                   "FastQuery=/Envelope/Body/getPolicyResponse",
                   "XMLFragmentParam=ParamXml_getPolicyResponse",
                   LAST);
//lr_end_transaction("获取保单概要信息",);
    if (strstr(lr_eval_string("{ParamXml_getPolicyResponse}"),"成功")!=NULL) {
    lr_end_transaction("webserver报文模板", LR_PASS);
  }
  else{
    lr_end_transaction("webserver报文模板", LR_FAIL);
    lr_error_message("webserver报文模板=%s", lr_eval_string("{ParamXml_getPolicyResponse}"));
  }
return 0;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值