说明:测试某系统登陆功能,登陆中的验证码已被屏蔽,辅助工具Firebug。

1、打开被测系统准备好firebug,准备抓包登陆操作;

 

2、Firebug抓包,获取登陆提交表单相关信息

         输入用户名密码,清除firebug中的数据,点击【保持】,进行登陆操作;

从firebug中可以看出,请求的方法为POST,请求参数中有个动态值lt,首先要解决的就是如何来获取lt的值;下面就用jmeter来模拟下登陆请求;

3、设置Jmeter配置

         打开Jmeter,添加-线程组,线程组右键-添加-配置管理器:添加请求头信息管理、添加cookie管理器、请求默认值、用户自定义变量;为了养成个好习惯,这些配置要随时加上;

         请求头信息管理:复制firebug头信息中的请求头信息到请求头信息管理中,删除里面cookie的内容,因为cookie信息可能是动态的,我们有cookie管理器来管理;

         请求默认值:输入测试服务器的IP和端口号,默认值可以在后续请求中不用输入,省时省力;

         用户自定义变量:设置用户名和密码,可以对用户名密码进行参数化,使脚本更灵活;

4、提取lt动态值

         线程组右键-添加-sampler,HTTP请求,命名为“获取lt”,路径设置为firebug抓包中提交登陆的地址,参数先不设置,添加查看结果树;

回放脚本,查看数中的响应信息并搜索是否有lt相关信息;

  果然在响应信息中找到了lt的信息,接下来需要用正则表达式将lt值提取出来;

  添加正则提取:“获取lt”请求右键,添加-后置处理器-正则表达式提取器;

  线程组右键,添加-sampler-debug sampler,名称输入lt=${lt},用于显示提取lt的值,查看是否提取成功;

  回放Jmeter,查看结果树信息中,可以看到正则提取lt的值;

5、添加登陆请求

  线程组右键-添加-sampler-HTTP请求,设置路径、请求方法和参数;

6、添加首页请求和断言

  根据firebug抓包信息,输入首页请求路径和方法;

登陆成功后,首页会显示用户名,所以对首页进行断言;首页右键-添加-断言-响应断言,输入参数化的用户名;

7、运行Jmeter,查看结果

  响应断言没有报错,首页结果中可以查看到登陆用户名,登陆成功。

如需要测试登陆并发,需要对用户名和密码进行参数化,设置线程组中的线程属性进行测试。参数化两种方式:一种是配置元件中的CSV Data Set Config,一种是函数助手中的_CSVRead函数,下次进行说明。

posted on 2016-05-30 15:37  TestWorld  阅读(619)  评论(0编辑  收藏  举报