第四篇--Jmeter模拟用户登录网站 - 康仔_Q

时间:2024-03-09 19:32:19

第四篇--Jmeter模拟用户登录网站

Jmeter模拟用户登录网站

1、Jmeter的bin目录下,打开jmeter.properties文件,修改CookieManager.save.cookies】项为true,保证Jmeter的cookie管理器可以

自动发送

2、新建测试计划,并建立线程组,线程组上新增-配置元件-【HTTP cookie 管理器】, 如下图:

  

3、新增http请求【index】,为跳转到系统登录页,返回页面有参数token的值,需用正则表达式提取器,提取出来,在登录时使用,如下图:

  

  

4、新建http请求【login】,传送参数有【account】、【password】、【token】、struts.token.name】,如下图所示:

   

  注意:token值取【index】响应结果中解析的result值

5、新建http请求【查询主机】,返回Json串,如下图所示:

  

6、添加http请求【查询数据】,如下图:

   

7、增加查看结果树,每个请求增加【响应断言】和【断言结果】

  

 

    总结:如果直接测试【查询主机】或【查询数据】请求,响应会报系统未登录;之前的【index】和【login】请求模拟了用户访问

  首页登录的过程,【HTTP Cookie 管理器】的作用相当于浏览器缓存的cookie值,让用户登录保持,之后【查询数据】也会自动

  填上cookie值。

    用户登录原理分析:登录时浏览器端发送服务端一个【sessionid】并保存到cookie中,然后服务端根据【sessionid】创建【session】,

  然后用户点击操作如【查询数据】,都会向服务端发送一个带【sessionid】的cookie,在服务端找到对应的session说明用户登录,如果清空

  浏览器cookie,无法找到【session】说明用户已退出。

  官网学习地址:http://jmeter.apache.org/usermanual/build-web-test-plan.html