Ⅰ JMeter入门指南-6.BadBoy录制脚本
整体UI布局:
上方工具栏:
从左到右依次为
录制/停止录制
停止回放
回放
回放所有脚本
倒放
单独运行一个请求
下方总结栏:
Played:运行脚本或者回放脚本的次数
Assertions:断言失败次数
Succeeded:运行脚本或者回放脚本的成功次数
Warnings:生成警告的次数
Failed:运行脚本或者回放脚本的失败次数
Timeouts:运行脚本或者回放脚本的超时次数
AvgTime(ms):平均响应时间
MaxTime(ms):最大响应时间
上方地址栏:
用于访问url
左侧脚本栏:
用于记录脚本
右侧操作栏:
在此处的操作均被录制为脚本
点击录制按钮,按钮状态变成如图七,即可开始在右侧操作栏进行操作
在右侧进行一系列的模拟用户操作后,可看见脚本栏中有很多链接,这样即为录制成功
点击左上角Flie->Export to JMeter,保存为JMX文件。
点击文件->打开 选择之前保存的JMX即可。
Ⅱ 什么是脚本录制
1. 什么是脚本录制
在进行测试的时候,可能有好多脚本或者界面需要操作测试,并且有些测试链接需要重复多线程高并发进行测试,我们一般会者罩针对这一些操作,进行一个脚本录制,录制好之后,之后测试就可以在这个基础上进行测试。
2. Jemeter脚本录制方式
web端:BadBoy脚本录制app端:使用Jmeter自带的代理服务器进行脚本录制
3. Android手机端脚本录制
前提:电脑和手机在同一网络段上
1:添加http代理服务器
2:在线程中添加录制控制器
3:在http代理服务器中指定录制脚本的路径,默认端口8888
4:查看本地的ip(wifi热点)
5:设置移动端代理,IP和端口号
6:启动
点击”ok”
7:打开手机app,抓取接口
8:点击”停止”按钮,结束者嫌枯录制
4.web端脚本录制
4.1. 安装badboy脚本软件
傻瓜式安装即可
4.2. 打开badboy软件
4.3. badboy脚本录制
点击录制按钮进首洞行脚本录制,完成打开搜狗搜索,搜索测试岗位薪资操作,然后停止,回放,(回放的时候,会因为编码原因导致乱码,需要手动调乱码问题)
4.4. 添加验证点
验证点的作用就是验证脚本是否按照我们测试的思路执行,判断脚本执行过程中是否存现问题
4.5. badboy参数化
所谓参数化,是指请求的某个参数提前设定多个值,在具体请求的时候,去获取提前设定的值,不同的业务场景设置的参数不一致。
4.6. 导出Jmeter脚本
4.7. 在Jmeter中导入badboy生成的脚本,验证测试
4.8. badboy并发测试
选择tools run background
4.9. badboy测试报告
在badboy-->view--->report下可以看到测试报告
Ⅲ jmeter入门 设置代理服务器和录制脚本
第一步:
可以设置浏览器代理,本文章推荐使用火狐浏览器
在浏览器—首选项--网络设置里面设置代理服务器
注意:端口号可以自行设置,但是不可以与本机其他代理产生冲突
第二步:
打开jmeter工具,添加非测试原件—HTTP代理服务器,
第三步:
设置端口号与浏览器设置的代理端口保持一致,注意线程组下面记得添加:HTTP Cookie 管理器
第四步:
填写录制的过滤条件,可以过滤掉一些不必要的接口
过滤条件可以使用:
*\.(js|css|PNG|jpg|ico|png|gif|woff|ttf|txt).*
这样基本设置就完成了,可以点击jmeter的代理服务器,录制脚本了;
点击启动,复制要测试的网址在火狐浏览器上,点击项目进行正常操作,接口就会自动录制,录制的接口可以手动筛除重复的;
注意: (这个已经改过了,不需要改,可以按照步骤去看一下文件哪个位置改了)
常见问题:
录制的Jmeter脚本回放时,发现输入的中文解析成乱码了
解决步骤:
1、打开Jmeter的安装目录,进入bin文件夹,编辑文件:jmeter.properties
2、将文件内容#sampleresult.default.encoding=ISO-8859-1
更改为:sampleresult.default.encoding=utf-8
(注意去掉前面的#号注释,否则不生效)。
Ⅳ 1.Jmeter录制脚本与遇到的问题
1.在测试计划下,右键点击【添加】->【非测试元件】->【Http代理服务器】
2.配置HTTP代理服务器,如下图所示:
0)新建录制控制器,放到线程组下
1)打开新增的HTTP代理服务器,修改目标控制器为”测试计划 > 线程组->录制控制器“
2) 修改分组为“每个组放入一个新的控制器”
3) 还根据需要可以修改代理端口号(默认8888)-选一个没被占用的端口号
4)选择“Requests Filtering”,点击【添加建议排除】
5)过滤录制网站:选择“Requests Filtering”,包含模式:.+(Host).+ --------------Host填写服务器host,例如:www.jianshu.com
大神给我的建议:
1.提前配置好用户定义的参数,如HOST,录制时会自动引用;PS:没有代表性的别配置,如 1、2、3之类的
2.用户参数的名称最好大写,大写醒目,便于排查问题
本人遇到的问题:
1.以上步骤都搞好了,但录制不到脚本,经大神指点终于知道解决方案:
1)设置Chrome浏览器代理,端口号要与Jmeter设置的一致
2)Chrome浏览器导入Jmeter证书,设置->高级->管理证书->导入->进入Jmeter的bin路径->点击证书ApacheJMeterTemporaryRootCA.crt->导入
3)进入Jmeter的bin路径->点击证书ApacheJMeterTemporaryRootCA.crt,鼠标右键【安装证书】,选择根目录下的证书文件
2、浏览器的代理服务网址输入的是本机的IP且览器设置的端口和jmeter设置的端口一致时,还是录制不了脚本
1)HTTP代理服务器中填写的端口被占用,换个没被占用的端口就OK了
2)端口的取值范围是:0-65535,一般在1024之后选取
Ⅳ 使用jmeter录制脚本及录制脚本的优化
1.右键测试计划---添加--线程(用户)--线程组
2.添加HTTP代理服务器(即把jmeter当做代理服务器)
3.设置代理服务器
①设置端口;
②设置Test Plan Creation 中的目标控制器(改为测试计划>线程组)注意不修改代理服务器启动时可能会报错;
③设置Requests Filtering (请求过滤器),添加建议排除,会根据设置排除模式,排除录制过程中的某些内容。
④点击“启动”按钮,后会弹出一个证书提示(注意:如果不是管理员使用,会报错,因为没有权限将证书写入到apache-jmeter-5.1.1\bin下)。
4.打开浏览器,设置计算机的代理设置(如图所示)
5.成功设置代理服务器后,在浏览器中输入网址访问,点击线程组中会有录制的脚本,因为再Requests Filtering (请求过滤器)设置了,添加了排除模式,所以录制时有些内容会被过滤。
6.录制成功后可以,添加察看结果树,保存脚本后,运行脚本。
7.录制完脚本后,接下来就是对录制脚本的优化,可以看出添加的排除模式并没有完全过滤CSS,可以禁用或删除无用的css和js(如何判断有这些内容有没有用,可以尝试先禁用掉,然后回放看对脚本有没有影响,如果禁用或者删除了,脚本还能运行成功,说明是无用的,否则反之)。
8.添加HTTP信息头管理器,作用于整个线程组,如果有自己单独的HTTP信息头管理器,则优先使用自己的。
9.如果有登录的脚本时,需要添加cookie管理器(不需要配置,直接添加使用)
Ⅵ 如何使用jmeter录制web系统
录制脚本目前有2种方法,我们先介绍jmeter proxy方法。另一个是badboy录制的脚本转化为jmeter脚本,直接想了解badboy,请直接访问
http://www.badboysoftware.biz/docs/jmeter.htm
jmeterproxy 来了。
1)启动jmeter,这个不多说了。
2)选择测试计划,右键添加线程组(thread group)
3)选择这个线程组,右键添加config element -〉 http默认请求
4)在http默认请求单元,填入server name 为jakarta.apache.org. 这个是我们要录制的页面。其他地方不填
5)然后选择刚才那个县城组,右键加入一个录制控制器。位于Add>Logic Controllers -> Recording Controller
6) 选择WorkBench,右键加入 Non-Test Elements -> Http proxy server
7)在http proxy server里, 的patterns to include 里,写入.*\.html 这个是正则表达式,意思是录制所有的html为后缀名的页面。 那么如果你要录制后缀名为jsp或者do的,则写入.*\.jsp 和 .*\.do 分别。
8)对于url怕tternstoexclude的地方,是写入不想被录制的一些资源文件url。比如图片等。这些配置,视测试的具体场景而定。比如是否要测试静态图片等。
9)为了调试录制的情况,我们选择http proxy server ,添加一个察看结果树监听器。这个以前我们曾经用过。
10)回到http proxy server然后,选择开始启动。这样proxy server 就启动了。
11)这样我们打开一个浏览器,将浏览器的代理设置为jmeter proxy server 的ip和端口号。因为proxy server 就在本地,所以就写localhost 和端口即可。
12)设置好代理后,用浏览器访问http://jakarta.apache.org/jmeter/index.html
13)随便点击一些连接,然后回到jmeter 的窗口,你查看结果树就看到了录制的http请求了。
record
14)这样的脚本,我们就可以直接用来运行了。
Ⅶ JMeter之代理服务器录制脚本
在JMeter中可以使用自身就带的HTTP代理服务器组件录制脚本,可以录制在WEB上的操作,也可以录制在手机App上的操作。
1、测试计划内包含的元件
添加元件操作步骤:
创建测试计划
创建线程组:选中“测试计划”右键 —> 添加 —> 线程(用户) —> 线程组。
在线程组中,添加配置原件“HTTP Cookie管理器”组件:选中“线程组”右键 —> 添加 —> 配置元件 —> HTTP Cookie管理器。
说明:如果录制的操作包括 用户登录操作 ,则需要添加“HTTP Cookie管理器”,添加之后不需要任何配置,录制后,脚本中便保存用户登录的相关信息。
在测试计划下,添加非测试元件“HTTP代理服务器”组件:选中“测试计划”右键 —> 添加 —> 非测试元件 —> HTTP代理服务器。
在HTTP代理服务器组件下,添加监听器“察看结果树”组件:选中“HTTP代理服务器”右键 —> 添加 —> 监听器 —> 察看结果树。
最终测试计划中的元件如下:
点击运行按钮,会提示你先保存该脚本,脚本保存完成后会直接自动运行该脚本。
2、HTTP代理服务器的设置内容
在HTTP代理服务器组件中,我们需要编辑:
端口: 默认8888,一般使用默认即可。主要不能与本地其他服务的端口号冲突,否则启动不了。
HTTPS Domains: 我的理解就是,设置代理服务器的主机IP地址或者域名。因为在我们本地使用,一般就是 localhost 或者127.0.0.1即可,当然不填写也是可以的。(此填写的地址一定要能够连接外网)
设置目标控制器: 也就是录制的组件存储到什么位置。这个一定要选,下图中选择了存储到目标线程组中。
配置完的界面内容,如上图所示。
3、设置浏览器的代理服务器
每个浏览器都可以设置服务器的代理,以Chrome浏览器为例。【设置需要区分是否为局域网】
点击右上角的设置 —> 高级 —> 系统 —> 最下面的‘’打开您计算机的代理设置‘’,点击右侧图标,就可以进入到代理服务器的设置页面了。
选要选中手动配置代理服务器,然后输入代理服务器的地址或者域名,还有端口号。
这里的配置,要和上面JMeter的HTTP代理服务器中的端口和HTTPS Domains的配置要对应上。
这样的话,浏览器中的操作,会先发送到JMeter中的HTTP代理服务器,在通过网络进行传输。这样JMeter中就可以录制下我们的操作,生成脚本了。
如下图所示:
4、录制脚本
以上内容设置完毕后,在浏览器地址栏中输入要录制脚本的地址。
然后在JMeter中的HTTP代理服务器界面,点击启动按钮。
提示:在HTTP代理服务器界面点击“启动”时,Meter将生成自己的证书。证书生成可能需要一些时间,在此期间,GUI将无响应。证书生成完成后,GUI将显示一个弹出对话框,其中包含根CA证书的详细信息,证书有效期为7天。该证书需要由浏览器安装,以便接受JMeter生成的主机证书。
如下图所示:
浏览器配置证书: 浏览器中导入证书 ,jmeter安装目录下的ApacheJMeterTemporaryRootCA.crt
之后开始在网站上进行操作,所有操作发出的请求,都会录制到JMeter脚本中。
操作完成之后,到JMeter的HTTP代理服务器中点击“停止”,然后将浏览器的代理设置恢复原样即可。
不恢复的话,会导致你无法使用浏览器访问外网。
如下图所示:【录制时弹出的控制器,不用进行设置,关闭时 点击 停止 即可】
5、查看录制的脚本
在JMeter中我们可以看到已经 记录 了许多请求对应的信息,包括PHP、js、.jpg、.png、.txt等请求。
如下图所示:
我们可以看到,我们只进行了简单的几步操作,却录制这么的请求。是因为JMeter录制很多非关键性的请求,这就需要我们进行一些优化。
录制脚本的优化有两个步骤:
在录制的时候,做一些过滤和排除操作。
在录制后的脚本中手动优化,删除不需要的组件,增加自己需要的组件。
1)服务器名称或IP与目标网站不同的、无关的,可以删除。
2)js/css/png/jpeg等这类请求删掉。
3)没有传递任何数据的请求可以屏蔽掉,等流程能回放成功了,这些再删除。如果回放不成功,再一个一个打开,进行检查。
6、HTTP代理服务器的排除模式
在测试脚本中有一些录制的信息是没有任何作用的,所以我们在录制脚本的时候,就可以通过HTTP代理服务器的排除模式,排除一些不需要的请求信息,如css、gif、png等请求。
例如:
在包含模式添加填上 .*\.jsp,只在请求JSP文件时录制脚本。
这里通常都是设置JSP或者HTML,可以根据具体情况进行填写。
在排除模式处填上.*\.js ,在请求js文件时不录制脚本。
这里通常都是设置js、jpg、png、gif、css等,这些类型文件请求都是不需要录制的。
当然我们也可以点击添加建议排除按钮,会自动生成一个过滤的正则表达式。
如下图所示:
添加上这些时候,录制出来的脚本,多余的累赘会减少很多。
7、保存脚本
脚本录制完成后,需要进行脚本的保存。
把脚本保存到本地,可以分享给其他成员,进行查看、编辑、回放等操作。
Ⅷ 浅学Jmeter性能测试:使用代理服务器录制脚本
右上角设置->高级->系统->打开您计算机的代理设置->连接->局域网设置->勾选“为LAN使用代理服务器”->地址输入:127.0.0.1->端口输入:8888->勾选‘’对于本地地址不使用代理服务器->确定。
PS:设置代理时要关掉抓包工具,因为它也是一个代理服务器。
注:jmeter自带代理服务器
1、设置代理
启动Jmeter->测试计划->右键添加“非测试元件”->选择HTTP代理服务器->设置端口:8888->Test Plan Creation-> 目标控制器选择“后面创建的自定义线程组”。
2、创建线程组存放脚本
测试计划->右键添加“Threads”->选择“线程组”-> 自定义线程组名称 ->保存。
3、提前设置过滤
通常会碰到录制完脚本后查看Jmeter有多余的请求,我们可提前设置过滤去掉不需要的请求。
在HTTP代理服务器页面,点击"Requests Filtering",找到“排除模式”后添加并输入多个正则表达式 ,每行一个(.*\.php.* 或 .*\.js.* 或 .*\.png.* 或 .*\.gif.* 或 .*\.txt.* )。设置完成后,再重新启动代理录制脚本即可。
PS:话说之前学到的正则表达式终于用上了~
4、录制脚本
在jmeter代理服务器里“启动”服务器->弹出窗口点击ok->操作浏览器里目标网页->结束录制需要的模块后,点击jmeter“停止”,在Jmeter里查看脚本。
5、优化脚本
录制完成后,可能还存在一些漏网之鱼,可根据实际需要增删请求或配置。
PS:删除了多余的请求;配置了监听器-查看结果树后,有些请求失败了,添加了cookie管理器后全都请求成功。
注:B/S录制完脚本一定要添加cookie管理器
6、浏览器增加证书(如果有需求访问Https,无可省略)
右上角设置->高级->隐私设置与安全性->证书->受信任的证书颁发机构->导入->在jmeter文件夹 bin 目录下 选择证书(只要开启过代理服务器,都会生成证书)。
录制完成后,一定要记得关闭代理服务器,否则上不了网。问题来了,如何取消代理服务器的设置呢?
右上角设置->高级->系统->打开您计算机的代理设置->连接->局域网设置->取消勾选“为LAN使用代理服务器”->确定。
Ⅸ Jmeter5.0脚本录制器及生成测试报告
①、使用Jmeter本身设置代理服务器进行录制
②、使用Badboy进行录制
1、通过在终端中输入jmeter启动,或者通过快捷方式启动(最好以管理员的方式启动)
2、在测试计划(Test Plan)中添加一个线程组(Thread Group),线程组主要用于存放录制的脚本
3、给测试计划(Test Plan)配置一个Http代理服务器(HTTP(S) TestScript Recorder)
4、配置Http代理服务器(HTTP(S) TestScript Recorder)
5、过滤录制过程中不需要的请求和移除静态资源
6、配置火狐浏览器的代理,打开火狐浏览器点击右上角的【三】图标,选择其中的【设置】,并在常规中找到【网络设置】点击【设置】
7、因为录制的是https的脚本,所以还需要导入证书到火狐浏览器,证书会自动生成,再jmeter的bin目录下面找到就可以了
8、要在计算机中导入这个证书,计算机中不导入这个证书也是不能录制https的脚本,按win+r,输入certmgr.msc打开证书,如果导入过就不用导入了
9、选择受信任的根证书颁布导入证书就行了,注意:没导入一定要导入,这里卡了我好久,主要目的就是让这个证书添加信任
10、前面的配置都配置好了,下面就可以点击【启动】来录制脚本了,点击【停止】可以停止脚本的录制
11、证书信任和录制暂停
12、用火狐浏览器输入网络,打开之后大功告成
13、停止之后可以看到录制的脚本了
14、可以通过筛选将不需要的接口删除,也可以给脚本添加断言、添加结果树、聚合报告、Active Threads Over Time、PerfMon Metrics Collector、 Response Times Over Time等来验证脚本
15、通过线程组配置好需要的压力
16、JMeter自动生成压力测试报告
将生成的.jmx文件执行压测并生成.jtl文件
生成压力测试报告,可以在当前的目录中生成
本例目录:D:\apache-jmeter-4.0\bin