首页 文章

是否可以在下一个后续请求中使用LoadRunner Web请求响应中的值?

提问于
浏览
0

Performance Engineering tool :LoadRunner 11

Protocol :Silverlight

The scenario: 1.调用(通过Silverlight应用程序)到Web服务器以生成唯一标识符(UID)2 . 服务器返回带有UID 3的响应 . 应用程序使用该UID保存患者记录(在此场景中) ,UID是唯一患者ID)

The problem: 我们希望使用步骤2的Web响应中收到的ID(例如,作为本地变量),并在LoadRunner发送的下一个后续请求中替换它 .

Please advise whether the same is possible.

*同时试图弄清楚“web_reg_save_param”是否能解决我们的问题 . *

------------ LoadRunner数据--------------------

1. Call to generate Uid

被忽略,因为它太大而无法粘贴到这里并且无关紧要

2. Response from server (The UID is UNI-0000001544)

HTTP / 1.1 200 OKCache-Control:privateContent-Type:application / msbin1Content-Encoding:gzipVary:Accept-EncodingServer:Microsoft-IIS / 7.5X-AspNet-Version:4.0.30319X-Powered-By:ASP.NETDate:Fri, 2012年7月6日05:41:27 GMT内容 - 长度:188 @ GenerateSequenceResponsehttp://tempuri.org/@GenerateSequenceResultRainultUNI0000-0000001544

3. Next LoadRunner request where the UID (UNI-0000001543) has to be replaced with the UID received in the response

web_custom_request(“SubmitChanges”,“URL = http://infinityappload/ClientBin/Infinity-Web-Services-ActorDomainService.svc/binary/SubmitChanges”,...,“BodyBinary = @ \ rSubmitChanges \ ... \ t \ tPatientID \ \ x99 \ x0EUNI-0000001543 \ ...最后);

2 回答

  • 0

    正如詹姆斯所说,这就是相关的概念 . 简化方法如下:

    web_reg_save_param("UID2", "LB=GenerateSequenceResult™", "Savelen=14", LAST); 
    //The TM symbol will have to be replaced by whatever HTML code is used. 
    
    web_custom_request("WebRequest1", ....);
    
    web_custom_request("SubmitChanges", "URL=http://infinityappload/...",
             ...
             "BodyBinary=@\rSubmitChanges\",
             "\tPatientID\\x99\\x0E{UID2}\",
             LAST);
    

    要关联的值将在它们将被填充的请求之前确定 . 然后可以在任何后续请求中使用它们 . 只需确保在使用相关参数时,它位于带引号的字符串中 .

  • 2

    您所指的概念是相关变量的管理,它是使用性能测试工具的核心概念,包括LoadRunner . 这一特定概念是近1/3标准LoadRunner脚本开发产品培训的主题 . 我将向您介绍系统文档中有关Web和Silverlight协议的相关性信息 . 此外,对于您的短期和长期成功至关重要的是,您要与强大的导师以及参加某种形式的标准产品培训配对 .

相关问题