JMeter之参数化

JMeter怎样参数化:

        JMeter参数化是JMeter的核心功能;

        下面我们以登录软件测试论坛这个接口为例:





通过抓包,我们知道了登录接口的信息:

域名:bbs.51testing.com

路径:/member.php?mod=logging&action=login&loginsubmit=yes&infloat=yes&lssubmit=yes&inajax=1

类型:POST

参数:fastloginfield,username,password,quickforward,handlekey

以及请求头,这里就不详细罗列了。

那么我们可以添加HTTP请求了:




首先我们要参数化的是用户名和密码,username和password这两个参数:

把abcdef改为${name},把123456改为${password}:




然后在线程组里面添加CSV数据集配置:




配置文件名是login.txt,一定要与.jmx脚本文件在同一个目录下;

文件的编码是gb2312,中文简体;

参数(变量)名是这几个:number,name,password,case,response;

5个,分别对应配置文件的5列数据,用英文,隔开;

下面我们来写配置文件,也就是.txt文件:




就像做功能测试那样设计登录的测试用例;

1,abcdef,123456,登录成功的测试用例,欢迎您回来,中级站友 abcdef,现在将转入登录前页面
2,AAAAAA,123456,用户名错误的测试用例,登录失败,您还可以尝试
2,abcdef,111111,密码错误的测试用例,登录失败,您还可以尝试
3,,123456,用户名为空的测试用例,登录失败,您还可以尝试
3,abcdef,,密码为空的测试用例,抱歉,密码空或包含非法字符
3,,,用户名和密码都为空的测试用例,抱歉,密码空或包含非法字符


在这里,为了方便理解,我调整了一下样式,

但还是要以上面那个文件的格式为准,不要保存下面这个:

从上往下看,分为5列,参数名和对应的值,分隔符是英文,




好了,组名(name)这个参数对应的就是if控制器,接下来我们在线程组里添加如果(if)控制器:




因为我们有三组测试用例,所以我们要添加3个if控制器:




让我们再分别展开每个if控制器:




然后把线程组的循环次数1改为1000,因为我们这里有6个测试用例,所以会循环6次:




然后再把服务器的域名和路径也改为参数化,这两个是全局变量:




对应的,3个HTTP请求也要修改:








对应的,响应断言也要改,这里要注意了,这几个响应断言都是一样的写法:




JMeter的元器件都是可以复制、粘贴和随便拖动的,完整展开是这样的:




好了,全部的准备工作都做好了,让我们来跑一把:

全部都是绿色的,说明这6个测试用例都成功了:




下面我们来看一下第6个:




好了,这就是JMeter的参数化,要注意的地方我已经指出来了;

我这里举的是登录的例子,在实际的工作中,你也可以灵活的运用。














  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值