自动脚本使用JMeter注销

时间:2017-06-21 20:59:33

标签: jmeter

我正在尝试自动化测试Web应用程序 我已经使用JMeter代理模板(JMeter版本为3.2)记录了测试,有几次我在JMeter中运行测试时它运行正常,但过了一段时间后只有一部分运行正常。

以下是我正在做的步骤:

  1. 点击网址

  2. 登录应用程序

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

  4. 等等。

    所有步骤都先完成几次,但之后只有登录才能正常运行 为了确保我尝试使用Regular" Expression Extractor"将第一个请求中的jsessionid传递给下一个请求。我可以在View Results Tree中看到jsessionid正确传递,但是在第二步之后的下一页仍然会将我带入登录屏幕。

    非常感谢任何帮助 我附上了截图以便更好地理解:

    enter image description here

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

1 个答案:

答案 0 :(得分:0)

JSF-based web applications的负载测试中,您需要至少注意以下动态参数:

  1. JSESSIONID
  2. javax.faces.Viewstate
  3. JSESSIONID是正常的HTTP cookie,因此添加HTTP Cookie Manager来处理它就足够了

    javax.faces.Viewstate是客户端状态管理机制,它还充当安全令牌以验证用户的来源。因此,您需要正确correlate它,即使用JMeter PostProcessors之一从先前的响应中提取,存储到JMeter变量中,并作为参数添加到下一个请求中。请记住为每个请求执行此操作。

    可能有更多特定于应用程序的动态参数,检测它们的最简单方法是记录相同的请求(或方案)2次,比较记录的脚本,检测并解决差异。