通过jmeter记录进行窗口弹出负载测试

时间:2019-09-18 12:46:07

标签: jmeter

父页面:HD FlowSheet 儿童弹出窗口:透析前治疗

要打开子窗口,请使用window.open()函数。

现在,我记录了脚本并使用带有jmeter请求功能的send参数来更新一些值(名称,值)。

现在执行它并分析侦听器,发现使用脚本一切都很好。但是当我使用浏览器转到子窗口时,我发现了相同的旧值。 请帮助我知道为什么该脚本无法正常工作。

1 个答案:

答案 0 :(得分:0)

“脚本中的每件事都很好”并不是很好,JMeter自动将400以下的HTTP status codes的HTTP请求采样器视为成功。

如果看到“绿色”成功结果,并不表示您的脚本正在执行应做的工作,则登录页面可能会“卡住”,因此我建议使用{{3 }}侦听器。

在绝大多数情况下,如果没有动态参数的View Results Tree,就不能重播录制的脚本。

再次记录相同的测试场景并比较脚本,很可能您会看到其中的差异,需要将这些动态值与需要关联的智慧相关联:

  1. 使用合适的JMeter correlation从上一个响应中提取动态值,并将其保存到Post-Processor
  2. 用上一步中的变量替换记录的硬编码值
  3. 重复所有动态参数

查看JMeter Variable文章以了解更多信息和示例。

还有两点需要记住/考虑:

  • How to Handle Correlation in JMeter添加到您的测试计划中,它特别处理基于cookie的身份验证,并且通常代表浏览器cookie
  • 根据HTTP Cookie Manager

      

    JMeter不是浏览器,它在协议级别工作。就Web服务和远程服务而言,JMeter看起来像一个浏览器(或更确切地说,是多个浏览器)。但是,JMeter不会执行浏览器支持的所有操作。 特别是,JMeter不会执行HTML页面中的Javascript 。它也不会像浏览器那样呈现HTML页面(可以将响应查看为HTML等,但是计时未包含在任何示例中,并且一次仅在一个线程中显示一个示例)。

    因此,JMeter不会自动调用JMeter project main page,您将需要手动添加相关的Window.open() function采样器。