jmeter-常见操作

1.jmeter连接数据库(MYSQL)

  • 1.下载数据库驱动
    • 所下载的驱动和数据库版本一致
    • 找开发/运维询问数据库版本
  • 2.创建测试计划连接数据库
    • 在测试计划中,将数据库驱动的jar包导入进来
      • 测试计划–>添加目录或jar包到classpath,点击浏览
    • 在线程组中添加连接数据库的配置组件
      • 配置元件—>JDBC Connection Configuration
    • 配置JDBC Connection Configuration
      • variable Name for create pool 填写 连接数据库的名称
        • 最好是项目名称
      • Database URL:数据库连接地址
        • jdbc:mysql://ecshop.itsoso.cn:3306/ecshop?参数(必要时)
      • JDBC Driver class:选择对应数据库驱动
      • Username:访问数据库用户名
      • password:密码
    • 添加JDBC Request
      • Variable Name Bound to pool 填写数据库配置中的名称
      • sql Query
        • Select 选项 只能执行查询语句
        • Updata 选项 执行新增,修改,删除
  • 数据库引用变量和输出变量
    • 引用变量(略)
    • 输出变量
      • JDBC Request 中添加变量名
        • variable Names 栏填写变量名
  • Debug sampler
    • 作用,读取测试计划中变量

2.关联(后置处理器使用)

2.1XPATH提取器

  • 位置 后置处理器
  • 使用范围 当接口返回值类型为xml/html格式时使用
  • 配置Xpath提取器
    • 在XML parsing Options 中勾选Use Tidy
    • 引用名称:变量名
    • XPath query :xpath表达式
    • 匹配数字:0,表示随机,-1,表示全部
    • 缺省值: 当表达式没有找到对应值得时候,变量=缺省值

2.2JSON提取器

  • 位置 后置处理器
  • 适用范围 当接口返回值类型为json格式时,使用
  • 配置JSON提取器
    • Names of created variable:变量名
    • JSON Path expressions:jsonpath表达式$…关键字
    • Match No:0,随机,-1,全部
    • default values:默认值

2.3正则表达式提取器

  • 位置 后置处理器
  • 适用范围 适用于任何返回值类型
  • 配置正则表达式提取器
    • 引用名称: 变量名
    • 正则表达式
      • 核心(.*?)
      • 正则表达式写法:使用(.*?)替代需要获取的部分
        • 例如:“session”😦.*?),“user”
    • 模板:$数字$ 1 1 1 表示获取第一组
    • 匹配数字:0,随机,-1全部,正整数,表示取第几个
    • 缺省值

3.断言

3.1响应断言

  • 位置 断言
  • 使用范围 适用于所有返回值类型
  • 配置
    • 断言非中文
      • 直接复制要断言的字段和对应值
    • 断言中文
      • 1.在http请求中添加—>后置处理器—>Bean shell postprocessor
      • 2.Bean shell postprocessor中编写一段代码,将Unicode编码下的中文解码
      • 3.中文断言

3.2时间断言和大小断言

  • 位置 断言
  • 时间断言,用来断言接口响应时间
    • 接口返回时间≤预期时间
  • 大小断言,用来断言接口返回值所占空间的大小
    • 实际返回值的大小和预期返回值大小

4.集合点–实现并发操作

  • 集合点:用于性能测试中,收集/集合虚拟用户的
  • 操作步骤
    • 1.创建测试计划
    • 2.添加线程组和取样器(HTTP请求)
    • 3.添加监听器
      • 查看结果树
      • 聚合报告
    • 4.在取样器下添加 Synchronizing Timer
      • 位置 定时器下
      • 配置 Synchronizing Timer
        • Number of Simulated User to Group by:每次用于并发的用户数
        • Timeout in milliseconds:集合并发用户数所使用的时间
    • 5.配置线程组
      • 修改线程数
        • 线程数最好是集合点中集合用户的倍数
  • 注意事项
    • 1.线程组中线程数最好是集合数的倍数
    • 2.集合时间大于线程启动时间
    • 3.当集合时间不为0时,到了集合时间就开始执行,不管是否达到集合数
    • 4.当集合时间为0,必须在集合数达到要求时,才执行
  • 集合点是性能测试中常用的一个方式,用来测试并发

5.函数

5.1函数使用步骤

  • 1.打开函数助手
  • 2.选择要使用的函数
  • 3.填写函数参数
  • 4.点击生成
  • 5.复制生成后的函数表达式
  • 6.粘贴到需要使用函数的位置

函数本质----对变量的引用

5.2 统计函数,随机函数,时间函数

  • 统计函数 counter
  • 随机函数 Random
  • 时间函数 time

在jmeter中任何可以输入的位置,都可以使用函数/变量

5.3跨线程组关联

  • 核心思想:提升线程组内变量的作用域,
  • 1.准备至少2个线程组
  • 2.线程组_2需要使用线程组_1中的变量
  • 3.提升线程组_1中的变量的作用域
    • 使用setProperty函数
      • 设置setProperty函数
        • 属性名称:提升作用域后的名称–自定义
        • value of property: 变量值
    • 复制setProperty函数
    • 在线程组_1中添加一个取样器—Bean Shell 取样器
    • 将setProperty函数粘贴在Bean Shell 取样器中
  • 4.使用property获取提升后的变量
    • 属性名称:写在setProperty中自定义的变量名
  • 5.将property函数复制到线程组_2中需要的位置

6.jmeter分布式

  • 分布式
    • 由多台电脑共同完成同一1个任务(请求)部署,我们称这种部署为分布式部署
  • jmeter做分布式测试配置
    • 前提
      • 1.控制机和执行机都安装了相同版本的java和jmeter
      • 2.控制机和执行机在同一网段下(一个局域网内)
      • 3.控制机和执行机脚本存放的路径一致
      • 4.控制机和执行机都需要关闭防火墙
      • 5.控制机和执行机只保留一个网络
    • 配置执行机
      • 1.获取执行机的ip地址
      • 2.将IP地址添加在jmeter配置文件中
        • remote_hosts = 172.16.20.254:1099
        • 保存配置文件
      • 3.启动jmeter-server.bat 等待执行机操作
    • 配置控制机
      • 1.将执行机的ip+端口号填写在配置文件中
        • remote_hosts = 172.16.20.254:1099
        • 保存配置文件
      • 2.打开jmeter—>运行—>远程启动
      • 3.执行脚本

5台执行机,测试脚本500,总的并发量=5*500

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值