性能测试-loadrunner模拟soap/webservice请求

模拟请求前需要开发提供

1、wsdl地址

2、消息体

3、返回值

Action()
{
int offset;
char *checkValue="ROUTING";
char *isFound;
char *strResponse;
char *strValue="(null)";
lr_think_time(10);
lr_start_transaction("GetVehicleProduct");

soap_request("StepName=SOAP Request",                                                                                                                                              "URL=https://ip:port/services/global/GetVehicleProduct/2?wsdl",
"SOAPEnvelope="
"<S:Envelope xmlns:S=\"http://schemas.xmlsoap.org/soap/envelope/\">"
  " <S:Header>"
     " <urn:ServiceControl xmlns:urn=\"xxxx:2\">"
"<urn:EmergencyRequestIndicator>TRUE</urn:EmergencyRequestIndicator>"
         "<urn:VersionID>2.0</urn:VersionID>"
        " <urn:LanguageCode type=\"translationLocale\">zh-CN</urn:LanguageCode>"
         "<urn:CountryID>CN</urn:CountryID>"
         "<urn:ApplicationID>xx</urn:ApplicationID>"
         "<urn:LogicalID>xx-soa</urn:LogicalID>"
         "<urn:ComponentID>GetVehicleProduct</urn:ComponentID>"
         "<urn:TaskID>GetVehicleProduct</urn:TaskID>"
        " <urn:ReferenceID>111111</urn:ReferenceID>"
         "<urn:SentTimeStamp>2011-11-14T16:32:22Z</urn:SentTimeStamp>"
         "<urn:MessageType>ShowVehicleProduct</urn:MessageType>"
        " <urn:ChannelID>WEB</urn:ChannelID>"
        " <urn:Environment>4.0</urn:Environment>"
     " </urn:ServiceControl>"
     " <oas:Security xmlns:oas=\"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd\">"
        " <oas:UsernameToken>"
           " <oas:Username>SODW_user</oas:Username>"
            "<oas:Password Type=\"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText\">SODW_password</oas:Password>"
         "</oas:UsernameToken>"
      "</oas:Security>"
   "</S:Header>"
   "<S:Body>"
     " <ns4:GetVehicleProduct languageCode=\"zh-CN\" releaseID=\"9.2\" systemEnvironmentCode=\"Production\" versionID=\"2.0\" xmlns:ns1=\"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd\" xmlns:ns10=\"http://www.tmforum.org/NGOSS/SID/Business/8.0/Resource\" xmlns:ns11=\"http://www.tmforum.org/NGOSS/SID/Business/8.0/Service\" xmlns:ns12=\"http://www.w3.org/2000/09/xmldsig#\" xmlns:ns13=\"urn:com:onstar:global:common:schema:GenericFault:2\" xmlns:ns14=\"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd\" xmlns:ns15=\"urn:com:onstar:global:common:schema:ServiceControl:2\" xmlns:ns2=\"http://www.openapplications.org/oagis/9\" xmlns:ns3=\"urn:com:onstar:global:common:schema:components:2\" xmlns:ns4=\"urn:com:onstar:global:common:schema:VehicleProduct:2\" xmlns:ns5=\"http://www.tmforum.org/NGOSS/SID/Business/8.0/Common\" xmlns:ns6=\"http://www.tmforum.org/NGOSS/SID/Business/8.0/Enterprise\" xmlns:ns7=\"http://www.tmforum.org/NGOSS/SID/Business/8.0/Product\" xmlns:ns8=\"http://www.tmforum.org/NGOSS/SID/Business/8.0/MarketSales\" xmlns:ns9=\"http://www.tmforum.org/NGOSS/SID/Business/8.0/Customer\">"
         "<ns2:ApplicationArea>"
           " <ns2:Sender>"
              " <ns2:LogicalID>onslabz-soa</ns2:LogicalID>"
               "<ns2:ComponentID>String</ns2:ComponentID>"
               "<ns2:TaskID>GetVehicleProduct</ns2:TaskID>"
              " <ns2:ReferenceID>0000429599</ns2:ReferenceID>"
              " <ns2:AuthorizationID>IG</ns2:AuthorizationID>"
            "</ns2:Sender>"
            "<ns2:CreationDateTime>2011-11-14T16:31:58Z</ns2:CreationDateTime>"
        " </ns2:ApplicationArea>"
        " <ns4:DataArea>"
            "<ns2:Get>"
               "<ns2:Expression>lookupByVehicleID</ns2:Expression>"
               "<ns2:Expression>//VehicleProduct</ns2:Expression>"
           " </ns2:Get>"
            "<ns4:VehicleProduct>"
               "<ns3:ID>1</ns3:ID>"
               "<ns3:VehicleID>{VIN}</ns3:VehicleID>"
           " </ns4:VehicleProduct>"
         "</ns4:DataArea>"
     " </ns4:GetVehicleProduct>"
   "</S:Body>"
"</S:Envelope>",
"SOAPAction=GetVehicleProduct",
"ResponseParam=response",
"Snapshot=t1389317519.inf",
LAST);
strResponse=lr_eval_string("{response}");
isFound= (char *)strstr(strResponse, checkValue);
isFound=(char *)isFound;
offset = (int)(isFound - strResponse + 1);
if (offset>0)
{
    lr_end_transaction("GetVehicleProduct",LR_PASS);
}
else
{
    lr_end_transaction("GetVehicleProduct",LR_FAIL);
    lr_error_message("Vin ID is %s",lr_eval_string("{VIN}"));
}
    return 0;
}
时间: 2024-08-29 09:33:04

性能测试-loadrunner模拟soap/webservice请求的相关文章

性能测试-loadrunner模拟REST接口的json请求

现在很多手机应用的性能测试,REST接口调用通过json格式,在用loadrunner模拟这些json请求时,需要开发提供 1.供接口地址 2.提交方式(get.post.put) 3.消息体(消息在loadrunner里面遇到特殊字符注意使用转义) 获取这些信息后就可以用loadrunner模拟请求了,demo如下: Action() { lr_think_time(1); lr_start_transaction("mnp_mock"); web_reg_save_param(&q

Loadrunner模拟JSON接口请求进行测试

一.loadrunner脚本创建 1.Insert - New step -选择Custom Request - web_custom_request 2.填入相应参数 3.生成脚本,并修改如下(参数中的引号"前需要加斜杠\转译) Action() { web_custom_request("web_custom_request", "URL=http://urlhead/CpcService.ashx?Method=checkXXXed", "

WebService Get/Post/Soap 方式请求

import java.io.ByteArrayOutputStream; import java.io.FileInputStream; import java.io.InputStream; import java.net.HttpURLConnection; import java.net.URL; import org.apache.commons.httpclient.HttpClient; import org.apache.commons.httpclient.methods.Po

Node.js 使用 soap 模块请求 WebService 服务接口

项目开发中需要请求webservice服务,前端主要使用node.js 作为运行环境,因此可以使用soap进行请求. 使用SOAP请求webservice服务的流程如下: 1.进入项目目录,安装 soap 模块 > npm install soap --save-dev 2.在项目的 node_modules 目录下找到soap模块下的 lib > client.js, 修改代码: soapAction = ((ns.lastIndexOf("/") !== ns.leng

java使用POST发送soap报文请求webservice返回500错误解析

本文使用JAX-WS2.2编译webservice,并使用HttpUrlConnection的POST方式对wsdl发送soap报文进行请求返回数据, 对错误Server returned HTTP response code: 500 的解决方法进行简单分析. 问题描述: 由于课程需要博主需要自己写一个webservice并且通过soap进行请求, 于是使用JAX-WS编译了下面java代码生成webservice服务 生成webservice的java代码: [java] view plai

[Python]webservice学习(2) --自己写soap消息请求服务

上文中webservice学习(1) ,使用soaplib建立了一个超简单的webservice服务,也是用suds调用成功了,那如果想使用http包自己组成一个soap消息来调用接口怎么办呢? 这个时候我们就想到使用wsdl这个文件了,我看了些wsdl的文档,也参照这其他人使用java,php等语言实现的soap消息调用的格式来写,但是怎么调试都没成功.. 就是说他总是会返回500或者是405各种错误,就是下面代码中的old_soap_body 变量中的消息格式. #coding: utf-8

LoadRunner之自定义HTTP请求

LoadRunner之自定义HTTP请求 性能测试开发脚本时使用的都是同样的模式.对在性能测试规划时指定的典型业务逻辑场景进行录制,形成基本的脚本骨架. 录制脚本后需要对脚本进行编辑,以满足性能测试需求,编辑脚本需要掌握参数化 .关联动态数据.增加逻辑控制等技术. 如果不能处理好脚本的录制和编辑, 就不可能有效和成功的继续进行性能测试.什么是参数化数据和动态数据呢? 这些数据都会做为http请求数据的一部分发送到web服务器,但二者肯定是有区别的. 录制业务逻辑脚本时,生成的脚本包含的是录制期间

kettle的HTTPPOST控件发送WSDL的webservice请求配置

1.webservice请求的URL:http://pubservice.rjhn.com.cn/AppserviceTest/JsonWcfService.svc?WSDL 2.使用SOAPUI测试接口 3.使用kettle测试接口 1)WSDL:网络服务描述语言是Web Service的描述语言,它包含一系列描述某个web service的定义.WSDL 用来描述如何访问具体的接口 2)SOAP:soap用来描述传递信息的格式,SOAP 可以和现存的许多因特网协议和格式结合使用,包括超文本传

随便聊聊 SOA &amp; SOAP &amp; WebService 的一些东西,以及客户端开发的代码逻辑解析

http://blog.csdn.net/hikaliv/article/details/6459779 一天的时间调通了一个 WebService 的 Java 端的 C/S.一个 Android 端的 C/S,调通了而已,很不爽,很闷.因为刚刚上手 JAVA & Eclipse,对于我这个用惯了 VS 2010 的同学来说,感觉大大的不好.被迫和陌生的感觉很容易让我这个巨蟹座的男人直接地由然而生强烈的抵触情绪.不过话说回来了,网络方面的东西我一直很感兴趣,苦于没有项目参与.谁让项目要求我 A