当前位置: 首页 > news >正文

Jmeter自定义脚本

目录

log:输出类

Label:你自定义的组件的名称

FileName:添加的脚本文件的文件名

Parameters:你传入的参数,是一个字符串

args:你传入的参数,是一个数组

Parameters和args的异同:

OUT:输出类

props:封装的Java中的这个类java.util.Properties

sampler:用来获取取样器的内容(如:请求头、url、取样器内容……)

ctx:上下文信息

vars:用来处理与自定义变量有关的操作

如何查阅官方文档


注:本文以前置脚本为例

步骤:右击“HTTP取样器”-> 添加 -> 前置处理器 -> JSR223

也可以选择BeanShell:

但是推荐选择JSR223,因为官方推荐:

创建完成之后可以看到如下界面

JMeter也给我们提供了一些参数/类:

注:上面这个页面中的Filename该属性名有误,应该为FileName。

log:输出类

编写输出脚本

log.info("哈哈哈");

点击运行后脚本的输出结果需要在这里进行查看:

点击这个三角可以弹出控制台,里面会打印各种程序执行过程中的日志和脚本打印的东西

Label:你自定义的组件的名称

log.info("打印Label的值:"+Label)

FileName:添加的脚本文件的文件名

以下面这段代码为例

log.info("啦啦啦啦啦");
log.info(FileName);
log.info("kkkkk");

添加了脚本文件:

没有添加脚本文件:

注:一旦添加了脚本文件,那么在下方输入框中编写的脚本将不会被执行

Parameters:你传入的参数,是一个字符串

传参的位置在此处:

args:你传入的参数,是一个数组

传参的位置和Parameters相同。

如果需要传多个参数,参数与参数之间用英文空格分隔

Parameters和args的异同:

相同之处:

  • 都可以接收用户自定义传入的参数(会将用户传入的所有字符当成一个字符串)。

不同之处:

  • Parameters只能接收一个参数;
  • args可以接收一个或多个参数,多个参数之间需要使用空格分隔

OUT:输出类

这个类是封装了java输出方法的一部分。可以将内容打印至控制台,而非GUI界面。

Java的输出方法:System.out.println(); 而OUT类封装了这段代码的前半部分,即System.out

OUT.println("hahaha");

props:封装的Java中的这个类java.util.Properties

理论上Properties类的方法都可以用

sampler:用来获取取样器的内容(如:请求头、url、取样器内容……)

注:sampler是一个接口,不是类,不是类。有多种实现方式。

如何看应该使用那个实现类的方法呢?最简单的办法就是随便乱写一个方法,然后看报错信息是那个类:

根据报错信息可以知道HTTP采样器使用的是org.apache.jmeter.protocol.http.sampler.HTTPSamplerProxy这个实现类,所以此时可以去官方文档查看这个实现类的方法。(文末有官方文档查阅方法)

获取请求参数:

import org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase;
log.info(sampler.getArguments().toString());

获取请求头信息并打印

log.info(sampler.sample().getRequestHeaders());

获取url并打印出来:

log.info(sampler.sample().getUrlAsString());

获取取样器内容:

log.info(sampler.sample().getSamplerData());

ctx:上下文信息

vars:用来处理与自定义变量有关的操作

在jmeter中自定义变量使用‘${}’来获取取值。

修改取样器的参数:

设置变量:

vars.put("val", "笔记本电脑");
//打印请求参数
import org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase;
log.info(sampler.getArguments().toString());

获取自定义变量:

vars.put("val", "笔记本电脑");
String a = vars.get("val");
log.info(a);

如何查阅官方文档

步骤:右击脚本组件 -> 帮助

点击帮助后会在浏览器中自动跳转至对应组件的官方文档。

跳转至此页面后往下滑动页面,可以看到这个

中间是方法名和参数配置,右边为对应方法的介绍,最左侧为方法的返回值类型。

http://www.dtcms.com/a/332550.html

相关文章:

  • paimon实时数据湖教程-主键表更新机制
  • 微服务的编程测评系统11-jmeter-redis-竞赛列表
  • Helm 常用命令 + Bitnami 中间件部署速查表
  • EhViewer安卓ios全版本类下载安装工具的完整路径解析
  • 【web自动化】-8-EXCEL数据驱动
  • 记录一下 StarRocks 点查的 Profile Metrics
  • 科技赋能千年养生丨七彩喜艾灸机器人,让传统智慧触手可及
  • 醋酸镧:看不见的科技助力
  • 学习笔记与效率提升指南:编程、记忆与面试备考
  • QML实现数据可视化
  • 解决Electron透明窗口点击不影响其他应用
  • [系统架构设计师]数据库设计基础知识(六)
  • 【Linux】编辑器vim的使用
  • 17.3 删除购物车商品
  • @Autowired @Resource IDE警告 和 依赖注入
  • 【解决笔记】MyBatis-Plus 中无 selectList 方法
  • 【详细操作指南】如何将 Moodle 与编辑器连接,以修改文档、检查和批改作业等
  • JavaScript 核心基础:类型检测、DOM 操作与事件处理
  • 8.15 机器学习(2)K最近邻算法
  • Chrome插件开发【Tabs】
  • 基于vue和nodejs的茶叶销售平台的设计与实现/基于express的茶叶商城系统
  • 从 LLM 到自主 Agent:OpenCSG 打造开源 AgenticOps 生态
  • 从CAD数据访问到3D协作,HOOPS SDK如何提升PLM解决方案竞争力?
  • PCA降维全解析:从原理到实战
  • p5.js 3D盒子的基础用法
  • [TG开发]照片机器人
  • 云手机选哪个比较好用?
  • 【Docker】关于hub.docker.com,无法打开,国内使用dockers.xuanyuan.me搜索容器镜像、查看容器镜像的使用文档
  • 腾讯云开发小程序工具箱使用心得
  • Docker Compose 入门教程