Jmeter系列之常用组件(一)
VOL 127
25
2020-05
今天距2021年220天
这是ITester软件测试小栈第127次推文
点击上方蓝字“ITester软件测试小栈“关注我,每周一、三、五早上 07:30准时推送。
微信公众号后台回复“资源”、“测试工具包”领取测试资源,回复“21天打卡”一起学习成长,打怪升级。
本文2679字,阅读约需7分钟
在上一篇:Jmeter系列之简介与环境安装,主要介绍Jmeter简介、环境安装及接口实战。一般在实际接口自动化过程中,会同时包含多个组件共同完成工作。
工欲善其事,必先利其器,以下介绍Jmeter一些常用的组件。
一
线程组
1
使用场景
无论用Jmeter做哪种测试,线程组
在Jmeter中占据主导地位,所有的逻辑控制器、采样器、处理器、报告等都必须放在线程组之下。
2
线程组界面说明
①测试计划右键,依次点击添加-->线程(用户)-->线程组。
②创建的线程组页面如下:
在取样器错误后要执行的动作:
继续
:遇错误继续执行,不影响场景运行。默认为继续,常用。启动下一进程循环
:执行下次循环,当前循环剩余sampler不再执行。停止线程
:停止当前线程,其他线程继续执行。停止测试
:执行完剩余线程后停止测试。立即停止测试
:立即停止所有线程。
线程属性:
线程数
:即并发数,如100并发,每个线程将会完全独立的运行测试计划,互不干扰。多个线程用于模仿对服务器的并发访问。Ramp-Up时间(秒)
:并发用户加载时间,如为1s,执行时1s内要加载100并发数循环次数/永远
:填写具体数字,即为并发执行循环次数,一次场景下来,请求的数量=线程数*循环次数;选择永远,则一直执行下去,除非手工停止。调度器
:勾选后,调度器配置项设置生效,可设置场景持续执行时间、延迟启动时间。持续时间
:场景持续执行的时间。启动延迟
:延迟多久执行。
3
实战小例子
①在线程组,设置线程数为10。
②线程组右键,依次点击添加-->取样器-->HTTP请求,请求配置信息如下:
③线程组右键,依次点击添加-->监听器-->察看结果树,点击运行按钮,执行结果如下,同一个接口执行了10次。
二
HTTP 请求默认值
1
使用场景
一般情况下,我们在一个项目中调用的接口中域名
、端口
等都是相同的。当我们创建多个HTTP 请求时,由于这些数据是必填项,所以,我们就需要不停地填写相同的数据。如果项目进行过程中出现了更改域名、更改端口号等情况,我们又需要把每一个请求中的数据都做更改,这样看上去似乎有些麻烦了。
Jmeter的HTTP 请求默认值可以解决这个问题,HTTP 请求默认值相当于全局配置域名(IP)和端口,之后的请求取样器,不需要填写域名(IP)和端口,项目中如有域名或端口改动,修改起来也方便。
2
HTTP请求默认值界面说明
①线程组右键,依次点击添加-->配置元件-->HTTP请求默认值。
②HTTP请求默认值界面如下:
界面名词解释:
服务器名称或 IP |
填写服务器名称或 IP |
端口号 |
填写端口 |
协议 |
协议类型。如 http,https |
路径 |
填写接口路径 |
内容编码 |
设置请求的编码格式 |
定义全局的默认值,比如这里维护了“服务器名称或 IP”,那么工程下的其他请求就不用再单独维护“服务器名称或IP”,默认取的就是 HTTP 请求默认值里的值。
3
实战小例子
①在线程组下,新建HTTP请求默认值,配置如下:
②在HTTP请求里,将域名去掉,使用HTTP请求默认值里的域名,http请求配置如下:
③添加察看结果树,运行效果如下:
三
用户定义的变量
1
使用场景
在调试脚本的时候,可以使用用户定义的变量
进行数据的提供,比如固定不变的一些配置项, 可以放到用户定义的变量里。缺点是,一个变量只能添加一个值,一个变量往往有多个值,如测试登录,需要添加多个账号。
2
用户定义的变量界面说明
①线程组,右键添加-->配置原件-->用户定义的变量。
②用户定义的变量界面如下:
名词解释:
名称 |
设置自定义变量的名称。使用 ${名称}调用变量。注意:该组件定义的变量是全局变量,作用于所有域和组件 |
值 |
变量对应的值。 |
Description |
简单描述。 |
3
实战小例子
之前的请求地址为https://cn.bing.com/search?q=ITester软件测试小栈,其中"ITester软件测试小栈"是搜索关键词,我们将关键词作为变量,之后在请求中引用变量即可
①创建用户定义的变量,点击底部添加按钮,添加变量。
②将q作为变量名,"ITester软件测试小栈"作为变量值,配置如下:
③在http请求中,引用变量,使用${q}。
④点击运行按钮,运行结果如下:
四
固定定时器
1
使用场景
获取服务端某些数据之前加固定定时器
,确保之前的请求已经在服务端生成了数据;
可以控制请求的时间间隔,延迟请求到达服务器的时间,模拟真实用户的行为。
定时器的作用域:定时器是在每个sampler(采样器)之前执行的。
主要的作用:是设置等待时间和延迟。
2
固定定时器界面说明
①线程组右键,依次点击添加-->定时器-->固定定时器。
②固定定时器界面如下:
线程延时默认为300毫秒,根据实际需要自行设置。
3
实战小例子
①创建固定定时器,设置线程延时为3000毫秒。
②点击运行按钮,发现3000毫秒后才会发送请求。
总结:本文主要介绍线程组、HTTP请求默认值、用户定义的变量、固定定时器的应用场景及实战。
以上
That‘s all
更多系列文章
敬请期待
ITester软件测试小栈
往期内容宠幸
1.Python接口自动化-接口基础(一)
2.Python接口自动化-接口基础(二)
3.Python接口自动化-requests模块之get请求
4.Python接口自动化-requests模块之post请求
5.Python接口自动化之cookie、session应用
6.Python接口自动化之Token详解及应用
7.Python接口自动化之requests请求封装
8.Python接口自动化之pymysql数据库操作
9.Python接口自动化之logging日志
10.Python接口自动化之logging封装及实战
想获取更多最新干货内容
快来星标 置顶 关注我
每周一、三、五 07:30见
<< 滑动查看下一张图片 >>
今日问题:
你在使用Jmeter过程中,常用的元件或插件有哪些?
(欢迎在下方留言区发表你的看法)
留言福利:
抽取截止至6月1日留言点赞最多的两位幸运er,可获得:百度网盘一月VIP会员
(幸运er名单将在下周一推文的置顶留言处公布)
后台 回复"资源"取干货
回复"21天打卡"一起打怪升级
测试交流Q群:727998947
点亮一下在看,你更好看
Jmeter系列之常用组件(一)相关推荐
- Jmeter系列之常用组件(二)
VOL 130 01 2020-06 今天距2021年213天 这是ITester软件测试小栈第130次推文 点击上方蓝字"ITester软件测试小栈"关注我,每周一.三.五早上 ...
- ROS系列:常用组件(一)
文章目录 五.ROS常用组件 1.TF坐标变换 1.1 坐标msg消息 1.2 静态坐标变换 五.ROS常用组件 在ROS中内置了一些比较使用的工具:本章主要介绍ROS内置如下组件: TF坐标变换,实 ...
- Jmeter系列之参数化
VOL 132 08 2020-06 今天距2021年206天 这是ITester软件测试小栈第132次推文 点击上方蓝字"ITester软件测试小栈"关注我,每周一.三.五早上 ...
- jmeter 实际运行线程数达不到设定值_Jmeter技术知识-常用组件实战演示(2020年最新)...
在上一篇:Jmeter系列之简介与环境安装,主要介绍Jmeter简介.环境安装及接口实战.一般在实际接口自动化过程中,会同时包含多个组件共同完成工作. 工欲善其事,必先利其器,以下介绍Jmeter一些 ...
- WEB前后端交互原型通用元件库、常用组件、信息输出、信息输入、信息反馈、综合系列、页面交互、首页、分类页、内容详情、用户中心、注册登录、找回密码、元件库、web元件库、rplib、axure
WEB前后端交互原型通用元件库.常用组件.信息输出.信息输入.信息反馈.综合系列.页面交互.首页.分类页.内容详情.用户中心.注册登录.找回密码.元件库.web元件库.rplib.axure原型 we ...
- 21天Jmeter打卡Day18 前置处理器_熟悉常用组件
21天Jmeter打卡Day18 前置处理器_熟悉常用组件 https://www.jianshu.com/p/84866b2315f8 前置处理器使用场景 1.准备测试数据 2.数据加密–BeanS ...
- 【大数据入门笔记系列】第一节 大数据常用组件
[大数据入门笔记系列]第一节 大数据常用组件 大数据释义 大数据组件 跳转 大数据释义 近些年来,坊间一直流传着这样的言论:"大数据时代,人人都在裸奔".对于外行人来说,对于&qu ...
- Unity3D课程系列上线--《unity 常用组件分析》
本人录制的Unity3D系列课程上线了,这是第一套 <unity 常用组件分析> http://www.maiziedu.com/course/others/540-7381/
- Jmeter系列之接口自动化实战
VOL 139 24 2020-06 今天距2021年190天 这是ITester软件测试小栈第139次推文 点击上方蓝字"ITester软件测试小栈"关注我,每周一.三.五早上 ...
最新文章
- Flex 学习笔记 动态设置itemRenderer
- 74HC573锁存器用法
- 使用Shell(bash) 来检查 git 本地某个分支是否存在
- 深度学习100例 | 第51天-目标检测算法(YOLOv5)(入门篇)
- 【bzoj2038】[国家集训队2010]小Z的袜子 莫队
- Qt Creator 创建优化的3D场景
- 求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)
- linux之wget和curl如何携带cookie进行链接访问
- 小程序实践(三):九宫格实现及item跳转
- Spring源码分析之ProxyFactoryBean方式实现Aop功能的分析
- Coinbase在上市前选择在Reddit线上路演
- 你所想要了解的美国人工智能专业
- cobar mysql 性能,Cobar + MySQL 技術驗證(li)
- App自动绑定的五大应用场景
- 四、案例:北京二手房价影响因素分析
- SpringBoot整合Magic-Api
- Swift网络请求 - RXSwift + PromiseKit + Moya
- 如何让ie6 ie7 并存
- js 中断函数执行_javascript 终止函数执行操作
- Android逆向:通过Xposed解密柠某直播本地数据
热门文章
- 如何解决linux下编译出现的multiple definition of错误
- python 调用dll 参数_python调用dll
- 随想录(怎么阅读代码)
- regester正则用法_Regester学习笔记
- h5物体拖动_html5实现拖拽效果
- php如何请求api,PHP如何发送GET/POST请求调用API
- vue 循环tabs 标签页 组件_Vue render函数实战--实现tabs选项卡组件
- java 8 jre_Java 8——JAVA jre运行环境
- 数据结构:栈的了解与示例(逆波兰表达式)
- linux 在命令行中复制的快捷键_在 Linux 中加速工作的键盘快捷键 | Linux 中国