使用JMeter注销自动脚本

问题描述:

我正在尝试自动化Web应用程序的测试。
我已经记录了测试使用JMeter代理模板(JMeter版本是3.2)和几次,当我在JMeter中运行测试它正常运行,但在某些时候只有一些部分正常运行。使用JMeter注销自动脚本

以下是我做的步骤:

  1. 击中URL

  2. 登录到应用

  3. 更改应用程序中的一些功能

和等等。

所有的步骤都是先运行几次,但之后只有在登录后才能正常运行。
只是为了确保我尝试从第一个请求传递jsessionid到使用常规“表达式提取器”的下一个请求。我可以在查看结果树中看到jsessionid正确传递,但在第二步之后的下一页仍然会将我带入登录屏幕。

任何帮助将非常感激。
我已附加截图为了更好的理解:

enter image description here

的登录页面的响应报头包括被在登录时由另一个请求的sessionid
所有的sessionID正确维护仍然记录后在下一页中将我带到登录页面,而不是显示录制中接下来要做的事情。

当谈到加载的JSF-based web applications你需要采取以下动态参数至少护理测试:

  1. JSESSIONID
  2. javax.faces.Viewstate

JSESSIONID是正常HTTP cookie所以它是足以添加HTTP Cookie Manager来处理它

javax.faces.Viewstate是客户端状态管理机制,它也充当安全令牌来验证用户的来源。所以,你需要正确correlate它,即使用的JMeter PostProcessors一个,存储先前响应提取到一个JMeter的变量,并作为参数传递给下一个请求。请记住为每一个请求都做这件事。

可能有一个以上专用动态参数,检测他们正在录制相同的请求(或方案)最简单的方法的2倍,比较录制的脚本,各地差异检测工作。

+0

非常感谢您为每个请求使用javax.faces.ViewState – Prasad