badboy和jmeter的下载安装及使用

本文介绍了Badboy和JMeter的下载、安装步骤,并详细讲解了两者如何使用,包括Badboy的录制脚本功能和JMeter的线程组、HTTP代理服务器设置,以及如何将Badboy的脚本导出给JMeter使用。此外,还提供了一个简单的压力测试实例分析。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Badboy+jmter的下载,安装以及使用

Badboy 下载及安装

因填写邮件不成功,所以另找地址下载了一下,现存在云盘里,需要下载的可以下载

直接解压缩,解压缩后双击安装,按照向导进行安装即可完成安装  

 

Jmter下载及安装

在官方网站http://jmter,apache.org/选择download Releases --点击下载Binary:apache-jmter-2.7.zip(注意ZIP包才是适合window系统的,其中source是可以看到源码的包,如果不查看源码可以只下载binary下面的ZIP包)

下载后解压:安装jmter需本地安装JDK及配置好环境变量,

详细配置如下:解压apache-jmeter-2.7_src.zipCc:\apache-jmeter-2.7目录下,桌面选择”我的电脑“(右键)--高级--环境变量,在”系统变量“---”新建“,在变量名中输入:JMETER_HOME,变量值中输入:c:\apache-jmeter-2.7,再修改CLASSPATH变量,变量值中添加

%JMETER_HOME%\lib\ext\ApacheJMeter_core.jar;%JMETER_HOME%\lib\jorphan.jar;%JME 然后到Jmeter\bin下运行jmeter.bat即可打开Jmeter

 

Badboy的使用(录制脚本)

 

如上图所示,即可badboy的主体界面,

(1)在红色框也就是地址栏里面输入要测试的地址 eg:http://www.baidu.com.

(2)点吉地址栏后面的绿色箭头,进行录制脚本。可随意点击右侧展示框中点击几个页面,再关毕

(3)点击操作栏上的方色方块就可以停止录制脚本。所有录制的脚本都会放在左侧的script 的平台上

(4)可以转化成jmter可以使用的脚本

点击file--->export to jmter

 另存为,可另起名,后缀名为.jmx

 

 

Jmter的使用

打开jmter文件下面的bin下面的jmter.bat即可找开jmter

本机目录:C:\apache-jmeter-2.13\bin

 

其主体工作界面。

在测试计划中添加线程组,

 

为什么要建立线程组?原因很简单,因为我们要模拟多个线程(用户)来访问LinuxEye
线程属性部分中,线程数是启动多少个线程,我这里填写的是10,Ramp-Up Period (in seconds)表示线程之间间隔多少时间允许,单位是秒,比如如果填写10,那么10/10=1表示10个线程间每隔1秒钟请求网站。
循环次数:60个线程运行完毕算是一次,循环次数就是这样的一个请求过程运行多少次,我这里测试就填写的是2.
每次修改一个设置后,别忘记了保存一下。

 

 

在线程组中添加逻辑控制器-录制控制器。

 

在工作台中添加非测试元件-HTTP代理服务器。

 

 

 

 

 

2) 设置请求服务器、压力链接等信息
接下来很自然的是,我们要测试的网站地址是什么?链接是什么?所以现在我们就来设置这些信息。
右键点击我们刚创建的线程组,在弹出的菜单中,选择添加->Sampler->Http请求,弹出如下图界面:

路径:
假如你只是对一个链接进行压力测试,直接填写一个链接就ok,比如 http://www.linuxeye.com,但是大多数情况下都不是这样的,我们这里需要多个链接,就如同刚开始讲到的那样,我们要将多个链接保存到一个文本文件中,然后随机读取进行压力测试。我们可以这么做,如图:

在选择一个功能下拉列表中选择_StringFromFile,然后在本机新建一个测试文件C:\Users\root\Desktop\apache-jmeter-2.9\test.txt,在第一行(你也可以不在第一行)的值中填写测试文件的路径,如下图:


然后点击“生成”按钮,在生成按钮的左边文本框中将生成一个字符串如:
${__StringFromFile(C:\Users\root\Desktop\apache-jmeter-2.9\test.txt,,,)}
test.txt测试文件中,我们每行写一个URL链接,如下格式:
/command
/linuxrumen
/program
/jianzhan
/command/cat.html
/command/chmod.html
/command/lsattr.html

注意,每行前面并没有http://www.linuxeye.com这样的信息,因为我们在前面已经填写了服务器地址为www.linuxeye.com,这里就没必要再为每个url填写这个相同前缀了;另外,上面的url格式也只是个例子,表示域名后的部分。

这样一来,当我们并非请求的时候,就会从test.txt中随机选择url来进行压力测试。
另外值得注意的一个地方是,如果参数中有中文的情况,运行的时候可能会出现乱码,这个时候就需要注意你在Jmeter中的编码设置与你要请求的网页编码是一致的。

路径文本框下面的选项,可以按默认的就成,Use multipart/form-data for HTTP POST是当请求中有附件的情况,一般情况下都不用选中的。

3) 查看运行结果
鼠标右键点击线程组,在弹出的菜单中选择添加->监听器->用表格查询结果,如下图:

4. 运行
当然,在运行前,请把所有修改都保存好
运行后的结果表格如下:

 

 

 

 

目标控制器选择测试计划》线程组

 

分组选择:每个组放入一个新的控制器

 

 

端口为8080

 

HTTP代理服务器中添加定时器-高斯随机定时器(用于告知Jmeter来在其生成的HTTP请求中自动的增加一个定时器)。定时器将会使相应的的取样器被延迟。 延时的规则是,在上一个访问请求被响应并延时了指定的时间后,下一个被定时器影响的取样访问请求才会被发送出去。 

 

如果在代理服务器元件里使用了高斯随机定时器,就应该在其中的固定延迟偏移(Constant Delay Offset)设置项里添上${T}(用于自动引用纪录的延迟时间)。

 

 

都设置好后,点击启用

 

 

 

 

 

 

 

 

 

 

 

 

实例分析

 

Jmeter入门

运行bin/jmeter.bat后,先来了解几个术语:

  1、线程组:测试里每个任务都要线程去处理,所有我们后来的任务必须在线程组下面创建。可以在“测试计划->添加->线程组”来建立它,然后在线程组面板里有几个输入栏:线程数、Ramp-Up Period(in seconds)、循环次数,其中Ramp-Up Period(in seconds)表示在这时间内创建完所有的线程。如有8个线程,Ramp-Up = 200秒,那么线程的启动时间间隔为200/8=25秒,这样的好处是:一开始不会对服务器有太大的负载。

  2、取样器(Sampler):可以认为所有的测试任务都由取样器承担,有很种,如:HTTP 请求。

  3、断言:对取样器返回的请求结果给出判断,是否正确。

  4、monitor:它的功能是对取样器的请求结果显示、统计一些数据(吞吐量、KB/S……)等。

  先这些概念。下面来试用一下:

  添加线程组,右击测试计划->添加->线程组,线程数为2,Ramp-Up=0,循环次数=5;添加取样器:右击线程组->添加->Sample->HTTP 请求,Web服务器localhost,端口8080,协议http,路径/index.jsp;添加monitor,右击线程组->添加->monitor->图形结果(第二个),然后再添加一个Summary report monitor。

  然后,运行->启动,在两个monitor中都可以看到一些内容,如:


  JMeter 的主要测试组件总结如下:

  1、测试计划是使用 JMeter 进行测试的起点,它是其它 JMeter 测试元件的容器。

  2、线程组代表一定数量的并发用户,它可以用来模拟并发用户发送请求。实际的请求内容在Sampler中定义,它被线程组包含。

  3、monitor负责收集测试结果,同时也被告知了结果显示的方式。

  4、逻辑控制器可以自定义JMeter发送请求的行为逻辑,它与Sampler结合使用可以模拟复杂的请求序列。

  5、断言可以用来判断请求响应的结果是否如用户所期望的。它可以用来隔离问题域,即在确保功能正确的前提下执行压力测试。这个限制对于有效的测试是非常有用的。

  6、配置元件维护Sampler需要的配置信息,并根据实际的需要会修改请求的内容。

  7、前置处理器和后置处理器负责在生成请求之前和之后完成工作。前置处理器常常用来修改请求的设置,后置处理器则常常用来处理响应的数据。

  8、定时器负责定义请求之间的延迟间隔。

具体实例分析:

 

 用badboy录制一个登录页面,作为jmeter的脚本 ,进行性能测试

点击 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值