『动善时』JMeter基础 — 46、使用Badboy工具录制JMeter脚本
1、使用Badboy录制JMeter脚本
打开Badboy工具开始进行脚本录制。
(1)当我们打开Badboy工具时,默认就进入录制状态。
如下图:
当然我们也可以点击录制按钮,进行状态的切换。
(2)在地址栏中输入被测地址,并访问。
我们以访问京东为例:
在输入栏中输入京东网址,点击后边的小箭头,跳转到被测地址中。
当点击箭头后,记录一步操作(相当于创建了一个取样器),并在右侧视图中显示被测网址的内容,如下图:
(3)在视图中可以直接操作显示出来的内容。
就和我们平时访问网站一样的,例如:我点击“请登陆”,就会跳转到京东的登陆页面了。
同时脚本目录树中就会继续添加一步操作。
(4)停止录制脚本。
如果一个测试流程录制完成之后,我们就可以点击停止录制。
就是点击工具栏中的小红点,如下图:
(5)保存录制好的脚本文件。
点击File
—> Export to JMeter...
,把脚本文件保存到你需要的位置,方便进行管理,JMeter文件的默认格式是.jmx
格式的文件。
(6)在JMeter中打开刚刚保存的脚本文件
点击文件 —> 打开
,找到刚刚保存的脚本文件进行打开,如下图:
说明:所有录制的内容都在
Step 1
中,这个组件叫录制控制器。
(7)添加监听器
使用Badboy录制的JMeter脚本,是不带监听器的。
这里我们需要手动添加一个监听器,方便查看结果。
(8)在JMeter中启动脚本
在工具栏中点击绿色启动箭头来运行该脚本。
脚本运行完成之后,可以在"察看结果树"中查看该测试计划中所有请求与响应的结果。
2、使用Badboy参数化配置
Badboy为方便自动化数据灵活性,提供了脚本参数化的功能。
像上面的例子中是没有输入性操作在里边的,如果我访问的是百度,需要输入一些搜索关键词信息,这个时候就需要参数化配置了。
(1)打开Badboy工具,默认就进入录制状态。
(2)在地址栏中输入被测地址,并访问。
例如:访问京东网站,搜索需要的商品。
(3)在百度搜索栏中输入搜索关键词“手机”,并点击搜索。
点击搜索:
(4)点击停止录制按钮,并开始修改。
展开上一步搜索商品增加的脚本目录树:
需要修改两处:
1)如果输入的关键字信息出现乱码的情况。
Badboy默认使用系统的IE浏览器,出现乱码的话,将ie
属性的utf8
改为gbk
。例如,京东网站的ie
属性为enc
属性。
双击enc
属性(在该属性上右键选择Properties
选项也可以),在弹出的窗口中进行修改,
如下图所示:
(GBK大小写都可以)
注意:你电脑默认的浏览器是什么编码,就换成它对应的编码即可,这样就可以不乱码。
2)配置输入的参数信息
例如:在京东页面中,keyword
属性就是关键词信息。
双击keyword
属性(在该属性上右键选择Properties
选项也可以),修改Value属性为${自定义的变量名}
,点击确定。
然后开始配置变量的参数信息,步骤如下图所示:
此时keyword
属性的值,已被参数化。
(5)双击Step 1,进行修改
选择For each value of vari
,表示以每个变量定义的值为准(也就是使用参数化)。
此时查看脚本树的变化,如下图:
(6)保存脚本,并用JMeter打开该脚本,运行即可。
也可以在Badboy中,右键点击Test 1
—> Play Whole Test
,执行该录制的脚本,查看执行效果。
3、解决“当前页面的脚本发生错误”提示框
Badboy 录制脚本的时候,总是弹出如下弹框提示“当前页面的脚本发生错误”。
打开Badboy —> preferences
—> 点击playing
—> 勾选Javascript Error Dialogs
,然后重新Badboy工具即可。
勾选“JavaScript Error Dialogs”
,意思是自动处理/抑制JavaScript错误对话框。
提示:如果以后在录制JMeter脚本的时候,出现如上的弹窗,我们直接点击叉子关闭即可。
4、总结
使用Badboy工具录制的脚本,相对于使用JMeter自身工具录制的脚本,更加精简,更加干净。
但是Badboy工具录制脚本的时候,经常出现无法录制脚本的提示,是非常不友好的。
JMeter自身自带的录制工具,兼容性就非常的好,就是录制的取样器非常的多,需要自己优化。
总结:以上都是Badboy最基础的用法,还有很多的功能以后在工作中慢慢学习、慢慢积累。
『动善时』JMeter基础 — 46、使用Badboy工具录制JMeter脚本的更多相关文章
- 『动善时』JMeter基础 — 6、使用JMeter发送一个最基础的请求
目录 步骤1:创建一个测试计划 步骤2:创建线程组 步骤3:创建取样器 步骤4:创建监听器 步骤5:完善信息 步骤6:保存测试计划 步骤7:查看结果 总结:JMeter测试计划要素 当我们第一次打开J ...
- 『动善时』JMeter基础 — 58、JMeter分布式测试
目录 1.JMeter分布式测试概念 2.JMeter分布式测试前提条件 3.JMeter实现分布式测试 (1)在执行机中的配置 (2)在控制机中的配置 (3)启动执行机中的JMeter服务 (4)在 ...
- 『动善时』JMeter基础 — 7、jmeter.properties文件常用配置
目录 1.默认语言设置 2.配置默认编码格式 3.GUI图标放大比例设置 4.功能区工具栏图标大小设置 5.视图区目录树图标大小设置 6.内容区编辑字体设置 7.添加JMeter元素快捷键设置 8.捕 ...
- 『动善时』JMeter基础 — 16、JMeter配置元件【HTTP信息头管理器】
目录 1.用于演示的项目说明 2.测试计划内包含的元件 3.HTTP请求界面内容 4.查看脚本执行结果 5.添加请求头信息(HTTP信息头管理器) 6.优先级说明 7.补充:常见请求头信息 JMete ...
- 『动善时』JMeter基础 — 22、JMeter中实现参数化(CSV)
目录 1.参数化的定义 2.什么情况下需要用到参数化 3.JMeter实现参数化的方式 4.CSV数据文件设置界面详细说明 (1)CSV数据文件设置组件界面说明 (2)补充说明:Recycle on ...
- 『动善时』JMeter基础 — 27、通过JMeter函数助手实现参数化
目录 1.测试计划中的元件 2.数据文件内容 3.函数助手配置 (1)函数助手的打开方式 (2)函数助手界面介绍 (3)编辑后的函数助手界面 4.HTTP请求组件内容 5.线程组元件内容 6.脚本运行 ...
- 『动善时』JMeter基础 — 31、JMeter中BeanShell断言详解
目录 1.BeanShell简介 2.Beanshell的内置变量和方法 3.BeanShell断言界面详解 4.BeanShell断言的使用 (1)测试计划内包含的元件 (2)登陆接口请求界面内容 ...
- 『动善时』JMeter基础 — 45、脚本录制工具Badboy介绍
目录 1.Badboy软件介绍 2.Badboy下载 3.Badboy安装 4.Badboy界面介绍 (1)菜单栏: (2)工具栏: (3)左下角界面视图: 1.Badboy软件介绍 Badboy是一 ...
- 『动善时』JMeter基础 — 47、JMeter的HTTP代理服务器详细介绍
目录 1.HTTP代理服务器的添加 2.HTTP代理服务器界面详解 (1)State:状态 (2)Global Settings:全局设置 (3)Test Plan Creation:测试计划创建 ( ...
随机推荐
- 【python】Leetcode每日一题-设计停车系统
[python]Leetcode每日一题-设计停车系统 [题目描述] 请你给一个停车场设计一个停车系统.停车场总共有三种不同大小的车位:大,中和小,每种尺寸分别有固定数目的车位. 请你实现 Parki ...
- 【python】Leetcode每日一题-螺旋矩阵
Leetcode每日一题-螺旋矩阵 [题目描述] 给你一个 m 行 n 列的矩阵 matrix ,请按照 顺时针螺旋顺序 ,返回矩阵中的所有元素. 示例1: 输入:matrix = [[1,2,3], ...
- Day004 Scanner对象
Scanner对象 作用 我们可以通过Scanner类来获取用户的输入 所属包 java.util.Scanner java 工具类下 基本语法 Scannner s=new Scanner( ...
- 【ECharts】报表联动,动态数据设计
说明: 数据没有拉取后台数据,仅仅前端模拟数据,Copy即可有效果.联动后台时,使用异步获取数据即可.鼠标点击,动态展示点击项的数据.有关更多实例,请移步到echarts官网查看. 成果展示: 相关代 ...
- Charles的功能(web)
# 验证是否可以获取web端的https接口 1. 打开Charles 2.打开游览器输入数据 3. 查看Charles 4.从上图所看,能获取htpps的包数据,即可对web端进行抓包 4.char ...
- python爬虫——《英雄联盟》英雄及皮肤图片
还记得那些年一起网吧开黑通宵的日子吗?<英雄联盟>绝对是大学时期的风靡游戏,即使毕业多年的大学同学相聚,难免不怀念一番当时一起玩<英雄联盟>的日子. 今天就给大家分享一下英雄及 ...
- Java关键字(八)——synchronized
synchronized 这个关键字,我相信对于并发编程有一定了解的人,一定会特别熟悉,对于一些可能在多线程环境下可能会有并发问题的代码,或者方法,直接加上synchronized,问题就搞定了. 但 ...
- font
font属性简写 front: font-style font-variant font-weight font-size/line-height font-family 说明: 值之间空格隔开 注意 ...
- 2.Python入门-计算机组成、指令和程序、标识符、变量、数据类型、对象和变量关系、运算符
一.计算机的组成 计算机由两部分组成:硬件 和 软件 硬件包含:键盘.鼠标.显示器.CPU.主板.内存.硬盘 ... -硬件是看的见摸得着的 软件包含:系统软件(windows.macOS.Linux ...
- crontab简单使用手册
Linux定时任务(1)- crontab 枫林风雨关注 0.1682018.12.14 12:29:47字数 946阅读 921 执行定时任务 crontab 执行循环任务 at 执行一次性任务 c ...