【问题标题】:How can I capture dynamic value in Load Runner that appears in the Request header section?如何捕获请求标头部分中显示的 Load Runner 中的动态值?
【发布时间】:2019-04-30 05:38:17
【问题描述】:

一个出现在后续网络请求中的动态值出现在整个脚本的请求标头中。我无法关联此值,因为它在响应标头/正文部分中不可用。我现在如何关联这个值?

我尝试使用 VUGEN - HTML & URL 模式进行录制。我还使用了 Fiddler 以及通过 Chrome 开发者工具导出的 HAR 文件。他们都没有任何在使用 VUGen 或其他工具进行录制时可能会遗漏的额外请求/响应。

动态值出现在请求标头中,如下所示:

参考:

https://*****/suite/sites/ecase-case-worker/page/home/start-process/iUBVQU4qoHEAl9UkPVyXKjTxMt3bz-olj7yCJ6dulSOHbmIIDal?parameters=**855b2a7b-a175-49e6-9ee0-7b7f37667197**

“855b2a....”值出现在整个脚本中的不同位置,如下所示:-

web_custom_request("iUBVQU4qoHEAl9UkPVyXKjTxMt3bz-olj7yCJ6dulSOHbmIIDal", 
        "URL=https://****/suite/rest/a/sites/latest/ecase-case-worker/page/home/startProcess/iUBVQU4qoHEAl9UkPVyXKjTxMt3bz-olj7yCJ6dulSOHbmIIDal?cacheKey=**855b2a7b-a175-49e6-9ee0-7b7f37667197**", 

我已在应用程序中手动验证,每次单击“创建应用程序”链接时,此值都会不断变化。有没有办法捕捉这个动态变化的值?

【问题讨论】:

  • 此值必须出现在响应中的某处,否则您将无法在请求中发送它。你不能自己生成它。你检查过完整的流量吗?

标签: testing scripting performance-testing loadrunner


【解决方案1】:

如果这不是从服务器发送给您的相关值,那么剩下的就是该值是在客户端生成的,可能是 JavaScript 函数输出的一部分。

与您的应用程序的开发人员讨论此值的生成位置。如果它是本地生成的,那么只需在 HTTP 脚本中执行 JavaScript 或在 C 中重现该算法,以便在 C HTTP 虚拟用户中本地包含。您还有一些备用路径,其中包括较新的基于 JavaScript 的虚拟用户、Truclient(运行完整的浏览器)、Citrix、RDP 或 GUI 虚拟用户。

使用 Truclient、Citrix、RDP 或 GUI,您只需运行完整的浏览器并继承 JavaScript 执行并将键值包含为完整堆栈执行的一部分。

【讨论】:

    【解决方案2】:

    Fiddler 记录有助于识别相关值,因为它隐藏在 EXTRARES 引用之一中,VUGen 没有在任何地方捕获。该请求必须随后手动添加到脚本中,以获取其响应中的动态值。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-11-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-03-06
      相关资源
      最近更新 更多