如何在 Jmeter 中处理动态 JSP 页面

How to handle dynamic JSP pages in Jmeter

我们正在尝试使用 Jmeter 基于 jsp 对我们的一个 Web 应用程序执行性能测试。现在,当我在该应用程序中打开 link 时,在浏览器中可见的 URL 保持不变并且不会改变,例如,如果应用程序的 URL 是 www.johndoe.com/abc 并且网页上有一个 link,上面写着单击此处联系,现在如果联系表打开,请单击该页面,但在浏览器中可见的网页 URL 仍然是 www.johndoe.com/abc

我使用 Jmeter 记录控制器记录了这些步骤,以便我可以对其进行性能测试,当我看到 http 示例时,它显示的路径类似于 /abc/rest/a/task/latest/3067/form,当我执行脚本时它抛出 401 Unauthorized Jmeter 错误。

我假设的是在幕后,这是联系表单页面的实际 link,数字 3067 是页面的 ID,它是动态的,每次刷新页面时都会更改。

有人可以建议我应该如何在点击 URL 之前捕获此自动任务 ID 并能够在 Jmeter 中访问该页面以便我可以进行性能测试吗?

要添加到上面,我还在该表单上 select 一些单选按钮和 select 表单上的一些下拉字段,我希望 Jmeter 在执行时做同样的事情,请告诉我如何我应该能做到吗?

动态参数没有出现 "out of nowhere",我的预期是 URL 像 /abc/rest/a/task/latest/3067/form 出现在 www.johndoe.com/abc 页面 HTML 响应中的某处。

因此检查响应并检查动态元素的存在及其在 response DOM. Once done you should be able to use Regular Expression Extractor or CSS/JQuery Extractor to extract this dynamic number between latest and form and store it into a JMeter Variable

中的位置

示例正则表达式类似于 /abc/rest/a/task/latest/(\d+)/form

整个过程称为"correlation",你应该可以在网上找到很多资料。