Jmeter参数化

Jmeter参数化

本质:使用参数的方式来替代脚本中的固定的测试数据

实现方式:

  • 定义变量(最基础)

  • 文件定义的方式(所有测试数据都是固定的情况下)

  • 数据库的方式(灵活)

  • 函数方式(灵活)

参数化测试:把测试数据组织起来,用不同的测试数据调用相同的测试方法

JMeter中常见的参数化方式

  • 用户定义的变量
  • 用户参数
  • CSV Data Set Config
  • 函数

用户定义的变量

作用:定义全局变量

位置:测试计划–>线程组–>配置元件–>用户定义的变量

练习

请求:https://www.baidu.com:443

要求:使用用户定义的变量配置被测系统的协议、域名和端口

操作步骤:

  1. 添加线程组
  2. 添加用户定义的变量。格式:变量名-变量值
  3. 添加HTTP请求,引用定义的变量名。格式:${变量名}
  4. 添加查看结果树

image-20240601215410131

用户参数

作用:针对同一组参数,当不同的用户来访问时,可以获取到不同的值

位置:测试计划->线程组->前置处理器->用户参数

练习:

请求:https://www.baidu.com

要求:第一个用户请求附带参数:name=“张三”&age=28;第二个用户请求附带的参数:name=“李四”&age=30

操作步骤

1.添加线程组,线程数设置为2

2.添加用户参数

3.添加HTTP请求

4.查看结果树

image-20240602110811692

image-20240602110834657

image-20240602110902146

image-20240602111011430

小结

(1)什么时候使用用户参数?

  • 针对同一组参数,当不同的用户来访问时,可以获取到不同的值

(2)使用”用户参数“进行参数化步骤?

  1. 添加线程组,设置线程数为n(表示模拟用户数)
  2. 添加用户参数
    • 第一列添加多个变量名
    • 后续每一列为一组用户的数据
  3. 添加HTTP请求,引用定义的变量名。格式:${变量名}
  4. 添加查看结果树

CSV数据文件设置

作用:让不同用户在多次循环时,可以取到不同的值

位置:测试计划–>线程组–>配置元件–>CSV数据文件设置

参数image-20240602112058225

练习:

请求:https://www.baidu.com

要求:循环请求3次,每次请求时附带参数username,password,code的值不同

操作步骤

  1. 定义CSV数据文件
  2. 添加线程组,设置循环次数为3
  3. 添加CSV数据文件设置
  4. 添加HTTP请求

image-20240602113429382

image-20240602113445149

image-20240602113458366

image-20240602113519348

小结

(1)什么时候使用CSV数据文件设置?

  • 当不同的用户,或者同一个用户多次循环时,都可以获取到不同的值

(2)使用”CSV数据文件设置“进行参数化的步骤?

  1. 定义CSV数据文件

  2. 添加线程组

  3. 添加CSV数据文件设置

  4. 添加HTTP请求,引用定义的变量名。格式:${变量名}

  5. 添加查看结果树

函数(__counter)

作用:计数函数,一般做执行次数统计使用

位置:在菜单中–>选项(或工具)–>函数助手对话框

参数:image-20240602114846609

练习:

请求:访问百度首页 https://www.baidu.com/S?num=1

要求:每个用户每次循环执行该脚本都可以使用不同的值

操作步骤

1.添加线程组,设置虚拟用户数和循环次数

2.生成__counter函数

3.添加HTTP请求,使用__counter函数

4.添加查看结果树

image-20240602115125821

image-20240602115206574

image-20240602115237250

image-20240602115303737

小结

(1)什么时候使用__counter函数?

  • 自动生成不重复的数据,让每个用户每次循环都能取到不同的数据,且不需要提前定义

(2)使用”counter函数“进行参数化的步骤?

  1. 添加线程组,设置虚拟用户数和循环次数
  2. 生成__counter函数
  3. 添加HTTP请求,使用__counter函数,格式:${__counter(False,)}
  4. 添加查看结果树

练习:

某支付系统,需要用1000个不同的用户登录,并使用添加不同的测试金额数据访问支付接口?

答案:

  • 添加线程组
  • 添加配置元件-CSV数据文件设置,读取CSV文件数据中的用户名密码
  • 添加HTTP请求-登录,引用CSV数据文件设置中的变量
  • 添加HTTP请求-支付,使用counter函数传入不同金额的测试数据
  • 添加查看结果树
  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值