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

性能测试-Jmeter常用元件基础使用

一、Jmeter元件

在这里插入图片描述

#线程组
添加HTTP请求
#配置元件
配置元件内的元件都是用于进行初始化的东西
#监听器
监听器主要是用来获取我们使用取样器发送请求后的响应数据相关信息
#定时器
定时器主要用来控制我们多久后执行该取样器(发送请求)
#前置处理器
前置处理器是对我们的请求参数在执行前进行处理
#后置处理器
后置处理器是对我们请求后所返回的响应进行处理
#断言
判断结果是否符合预期的功能

执行顺序:

配置元件 - 前置处理程序 - 定时器 - 取样器 - 后置处理程序 - 断言 - 监听器

1.Jmeter线程

#线程组
控制Jmeter用于执行测试的一组用户,用于执行测试用例,可以有1个或者多个(并行/串行)
#Setup线程组
预测试操作,所有脚本之前执行
比如:测试用户购物功能时,用于执行用户的注册、登录等操作
#tearDown线程组
测试后操作,所有脚本之后执行
测试用户购物功能时,用于执行用户的退出等操作
tips:默认情况下,如果测试按预期完成,则TearDown线程组将不会运行。

在这里插入图片描述
线程组的并行或串行启动的开关按钮:
在这里插入图片描述

2.HTTP请求参数填写

在这里插入图片描述

3.参数处理
  • 全局参数
    HTTP请求头管理器,避免添加多个HTTP请求时,需要多次添加HTTP请求头信息
    在这里插入图片描述
  • 数据文件
    CSV数据文件设置—文件方式参数化
    使用:只需要在需要导入的地方采用${变量名}就可以使用
    在这里插入图片描述
    在这里插入图片描述
  • 函数–生成随机数据
    打开方式:工具–函数助手对话框
    在这里插入图片描述
    在这里插入图片描述
    总结

#全局变量
作用:定义全局变量
局限性:每次取值(无论用户)都是固定值
#数据文件
作用:保证不同用户在不同循环中取到不同参数
局限性:需要手动设置数据,当用户循环过多,数据设置过多显得繁杂
#函数参数
作用:自动生成不重复的数据,让每个用户每次循环都获取到不同的数据,且不需要提前定义
局限性:针对特定要求的场景,无法使用,泛用性较低(例如需要输入正确的账号密码进行登录时)

4.Jmeter断言
  • 响应断言
    在这里插入图片描述

1.响应断言下方的名称和注释就是该响应断言的展示属性
2.apply to 这里我们选择默认 Main sample only 即可
3.测试字段主要是指我们是根据response的哪一部分来进行断言匹配
响应文本:来自服务器的响应文本,即主题
响应代码:响应状态码,例如200
响应信息:响应的信息,例如OK
响应头:响应头部
请求头:请求头部
URL样本:请求URL路径
文本:响应的整个文本信息
请求数据:请求数据
忽略状态:请注意这里是复选框,因为我们的断言有响应码自动判断机制,如果我们需要判断响应码为非200状态,我们需要将其勾选防止报错
4.模式匹配规则
包括:文本包含指定的正则表达式
匹配:整个文本完全匹配指定的正则表达式
相等:整个返回结果文本完全匹配指定的字符串
字符串:返回结果文本包含指定的字符串
否:当存在多个测试模式时,默认为and(当全部满足才通过断言),如果勾选这里相当于!(全部不满足才通过断言)
或者:当存在多个测试模式时,默认为and(当全部满足才通过断言),如果勾选这里相当于or(存在一个满足就通过断言)
当然否和或者你也可以一起使用,相当于!or(存在一个不满足就通过断言)
5.测试模式
我们可以添加多个测试模式
测试模式其实就是断言的判断值,与response进行比较
结果值 比较方式 预期值 --> ${测试字段} ${模式匹配规则} ${测试模式}
例如:text == “百度一下,你就知道”

在这里插入图片描述

  • json断言
    在这里插入图片描述
    这是一个json格式的返回数据,我们来根据这个返回值进行匹配
    在这里插入图片描述在这里插入图片描述
    断言结果
    在这里插入图片描述
5.正则表达式提取器

我们常用的匹配符号主要包含以下三种:
.:是通配符,可以代表任意字符(除换行回车)
*: 代表前面的字符出现0次或者多次
.*匹配规则:找到左边界值后,往右查找有边界,找到最后面的右边界,中间的所有数据都被记录下来
?: 代表非贪婪匹配,找到左边界后,往右查找匹配右边界,只要有匹配的右边界就停止继续查找;再次查找

例如我们要查找’hello world’
返回数据格式:“hello worldhello world
我们使用 (.<em>)</em>,会一直往后寻找到最后一个标识符,匹配到的就是 hello worldhello world<br/> 我们使用<title>(.?),找到第一个就会停下,匹配到的就是hello world

6.JSON提取器

JSON提取器主要针对返回结果是JSON的响应结果数据进行提取
在这里插入图片描述


http://www.kler.cn/a/273990.html

相关文章:

  • 提升汽车金融租赁系统的效率与风险管理策略探讨
  • Apache zookeeper集群搭建
  • 【服务器项目部署】✈️将本地项目部署到服务器(二)!
  • 你已经分清JAVA中JVM、JDK与JRE的作用和关系了吗?
  • 有效字母异位词力扣--242
  • HTML5 SSE
  • 【每日一问】手机如何开启USB调试?
  • elment-ui el-tabs组件 每次点击后 created方法都会执行2次
  • 【四 (4)数据可视化之 Ploty Express常用图表及代码实现 】
  • 数据库中DQL、DML、DDL、DCL的概念与区别
  • LightDB24.1 Sequence支持设置minvalue小于INT64_MIN
  • 生成式人工智能如何改变商业和社会
  • layuiAdmin-通用型后台模板框架【广泛用于各类管理平台】
  • html5播放flv视频
  • 微服务原理和实践
  • 如何使用vue插件Konva实现图片的缩放
  • 【代码随想录Day27】
  • 网页429:请求过多
  • 探索未来科技:量子计算的前沿与挑战
  • ET框架新起一个服务及实现服务之间的消息通讯
  • java毕业设计 | springboot+vue游戏交流网站(附源码)
  • 中国传统游戏-幻方-c/c++实现
  • 每天一个数据分析题(二百一十五)
  • 【leetcode】动态规划专题
  • html--蝴蝶
  • 生成微信小程序二维码