Jmeter+Badboy安装使用文档
目录
1、jmeter安装 1
2、Jmeter基础使用 3
3、 使用Jmeter进行分布式测试 10
4、badboy安装 11
5、badboy+Jmeter录制及导出测试 12
Jmeter介绍:
JMeter可以用于测试静态或者动态资源的性能(文件、Servlets、Perl脚本、Java对象、数据库和查询、ftp服务器或者其他资源)。原先Jmemer是为Web/HTTP测试而设计的,但是它已经扩展以支持各种各样的测试模块。它和用于HTTP和SQL数据库(使用JDBC)的模块一起运送。它可以用来测试静止资料库或者活动资料库中的服务器的运行情况,可以用来模拟对服务器或者网络系统加以重负荷以测试它的抵抗力,或者用来分析不同负荷类型下的所有运行情况。它也提供了一个可替换的界面用来定制数据显示,测试同步及测试的创建和执行。
备注
jmeter安装启动报错:Not able to find Java executable or version. Please check your Java installation,请执行以下操作:
在环境变量PATH中添加:%SystemRoot%/system32;%SystemRoot%;
1、jmeter安装
1、下载jmeter,官方网址为http://jmeter.apache.org/(选择下载Binaries类型的安装包,不要选择Source类型,不然会出现Unable to access jarfile ./ApacheJMeter.jar的报错)
(安装前确保已经安装java)
2、下载完成后,直接解压缩,在jmeter的bin目录下,找到jmeter.bat文件,双击运行
3、主界面如图所示:
除此之外还有一个命令框,不能关闭,一关闭jmeter也会关闭
2、Jmeter基础使用
程序运行以后,我们可以看到,JMeter是以测试计划的形式组织测试的。在测试计划上点击右键,选择"添加",我们可以看到,JMeter主要包含了以下内容的组件:
1、线程组(Threads)——代表一定数量的并发用户,它可以用来模拟并发用户发送请求。实际的请求内容在Sampler中定义,所有请求均需要被线程组包含。
2、测试片段(Test Fragment)——测试片段是一种特殊类型的控制器,它在测试计划中与线程组同级。测试片段与线程组的区别在于:在一个测试计划中,线程组自身是会被执行的,而测试片段自身并不会被执行。只有当测试片段被一个模块控制器引用,或被包含在一个控制器中时,才会被执行。简单的说,我们可以将线程组理解为入口函数,将测试片段理解为私有函数,测试片段只有在被调用时,才会被执行。
3、配置元件——配置元件维护Sampler需要的配置信息,并根据实际的需要会修改请求的内容。
4、定时器——定义请求之间的延迟间隔。
5、前置处理器、后置处理器 - 负责在生成请求之前和之后完成工作。前置处理器常常用来修改请求的设置,后置处理器则常常用来处理响应的数据。
6、断言——用来判断请求响应的结果是否如用户所期望的。它可以用来检查测试的有效性,隔离问题域,在确保功能正确的前提下执行压力测试。
7、监听器——负责收集测试结果,同时以多种方式进行显示。
简单例子:
1)先添加一个线程组,并进行线程并发量的设置:
其中,
1)线程数-表示JMeter将发起多少个线程进行目标访问
Ramp-Up Period – 表示JMeter将在多长时间(以秒为单位)内将这些线程发起完毕
循环次数 – 表示JMeter将对当前的线程组进行多少次循环访问
- 建立采集器(Sampler),向线程组中添加一个Http请求的采样器
配置如下(Apache server (Http)的默认端口是80;SSL (Https)的默认端口是443)
- 添加监听器,这里添加一个"图形结果"和一个"用表格查看结果"。
4)运行启动测试,查看结果
运行测试,查看图形结果,我们可以看到所有访问的数据量、访问时间平均值、中值、访问的偏离量(访问时间与中值时间的差)、吞吐量。
如图,查看图形结果,可看到访问的数据量、访问时间平均值、中值、访问的偏离量(访问时间与中值时间的差)、吞吐量
如图,查看表格结果,可看到所发起的线程、开始时间、采样时间、状态(是否访问成功)、访问传输的数据量、访问延时、以及访问时间等内容。
5)结果分析
通过监听器获得的结果,可以进行导出,之后再对这些结果做进一步的数据分析,即可估算衡量网站的性能情况。(常用的监听器除了上面两种还有聚合报告)
-
使用Jmeter进行分布式测试
JMeter也可以像 LoadRunner 一样通过使用多台机器运行所谓的代理来分担负载产生器自身的压力,并借此来获取更大的并发用户数,只需手动配置一下即可。
1、在所有期望运行JMeter作为负载产生器的机器上安装JMeter,并确定其中一台机器作为控制器,其他的机器作为代理。然后运行所有 代理机器上的JMeter-server.bat文件—假定我们使用两台机器172.20.80.47和172.20.80.68作为代理;
2、在Controller机器的JMeter安装目录下找到bin目录,再找到 jmeter.properties 这个文件,使用记事本或者其他文字编辑工具打开它;
3、在打开的文件中查找"remote_hosts="这个字符串,你可以找到这样一行"remote_hosts=127.0.0.1"。其中的 127.0..0.1 表示运行JMeter代理的机器,这里需要修改为"remote_hosts=172.20.80.47,172.20.80.68";
4、保存文件,并重新启动控制器机器上的JMeter,并进入启动 ——远程启动菜单项。就会看到我们刚才添加的两个代理的地址,选中即可运行,如果想同时启动所有代理,选择远程全部启动即可。
5、要进行分布式测试代理机器上需要添加环境变量,即添加用户变量JMETER_HOME=d:\jmeter,系统变量中的path中添加d:\jmeter\bin(假设jmeter放在d盘根目录下)
4、badboy安装
- 在官网下载(http://www.badboy.com.au/download/index)badboy软件
- 下载完成后直接点击exe文件进行安装,跟平常软件安装一样,这里就不详说。
- 安装完成后点击图标,可看到badboy的IDE界面,如下图
5、badboy+Jmeter录制及导出测试
下图是对界面进行的一些注解,看完可大概了解其基本运用
1)在地址栏(图中红色方框标注的部分)中输入你需要录制的Web应用的URL,这里我们以http://www.baidu.com为例。
2)点击"开始录制"按钮(图中红色圆圈标注的部分)开始录制 。
3)开始录制后,你可以直接在Badboy内嵌的浏览器(主界面的右侧)中对被测应用进行操作,所有的操作都会被记录在主界面左侧的编辑窗口中(图中方框标注的部分)。
5)录制完成后,点击工具栏中的"停止录制"按钮(图中红色方框标注的部分),完成脚本的录制。
- 选择"File -> Export to JMeter"菜单,填写文件名"baidu.jmx",将录制好脚本导出为JMeter脚本格式。也可以选择"File -> Save"菜单保存为Badboy脚本。
- 启动JMeter,点击文件-打开,选择刚刚生成的测试脚本,就可以用JMeter进行测试了
原文地址:https://www.cnblogs.com/mcboy/p/8964702.html