`

JMeter 和 Badboy: 功能和性能测试工具

 
阅读更多
JMeter
=======================================================
JMeter基础之一 一个简单的性能测试 http://www.cnblogs.com/fnng/archive/2012/12/22/2829479.html看完这个就学到很多东西
jmeter入门教程- Jmeter教程及技巧汇总 http://www.jmeter.cf/jmeter-summary.html

JMeter试用手记 http://gq913.iteye.com/blog/157280
JMeter入门教程 http://blog.csdn.net/w565911788/article/details/7629787
使用jmeter测试web应用遇到的几个问题及解决 http://chen4w.iteye.com/blog/945298,录制问题。
jmeter学习系列--脚本参数化和断言设置 http://www.blogjava.net/qileilove/archive/2012/05/02/377159.html,利用Jmeter的CSV Data Set Config来实现参数化功能
用jmeter进行多用户并发压力测试 http://www.bubuko.com/infodetail-836134.html
Jmeter逻辑控制器功能说明  http://my.oschina.net/u/2391658/blog/701485




综合: 模仿用多用户做压力测试的大致步骤
1. 录制脚本
2. 配置session,注意session跟http cookie manager的配置关系。
3. 配置用户列表的CSV Data Set Config初始化数据
4. 线程组并发和测试


录制:
可录制JMETER脚本的CHROME扩展插件BlazeMeter http://www.iquicktest.com/chrome-extension-jmeter.html
JMeter基础之—录制脚本 http://www.cnblogs.com/fnng/archive/2011/08/20/2147082.html
Jmeter 快速入门教程(四)--录制复杂web测试脚本 http://www.jmeter.cf/index.php/tutorials/154-jmeter-web.html
代理录制 IE无法录制到请求的问题解决 http://www.cnblogs.com/nocturneg/archive/2012/08/06/2624674.html
录制配置:
chrome SwitchySharp 选项:
手动设定:localhost, 端口: 8081 (jmeter代理的端口),本地服务器的话,清空"不代理的地址"。
jmeter:
http 代理:
端口:8081, https domian: localhost:8080(非https服务器不需要配置这里)  这里就是让通过端口8081转发到8080端口(实际站点端口)


插件:
官方插件: http://jmeter-plugins.org/downloads/all/
Web Driver http://jmeter-plugins.org/wiki/WebDriverTutorial/
WebSocket Testing With Apache JMeter http://blazemeter.com/blog/websocket-testing-apache-jmeter

JMeter常用测试元件 http://book.51cto.com/art/201204/327306.htm
jmeter之配置元件 http://www.blogjava.net/qileilove/archive/2014/02/28/410451.html


JMeter文章收集http://www.ltesting.net/ceshi/open/kyxncsgj/jmeter/,里面的文章不是很完整。
实战:使用JMeter的Java Sampler轻松定制自己的benchmark http://itstarting.iteye.com/blog/1513335


一些说明:
Session 要使jmeter能够保持住session,必须使其能够维持cookie中的jsessionid,因此增加“http cookie manager”.
同时,注意这文章说明:jmeter 性能测试,关于session保持的问题解决 http://blog.csdn.net/catoop/article/details/8055264
需要了解如何配置支持cookie JMeter——HTTP COOKIE Manager(cookie管理器)  http://wangsheng14591.blog.163.com/blog/static/327797102012829101351887/
自己配置可以解决[no cookies]问题
1.配置jmeter.properties
CookieManager.save.cookies=true
CookieManager.check.cookies=false
2.在cookie管理中,增加的参数比如
名称:paramter1,值:pandy,域:localhost,路径:/mywebapp/weburl(这里的路径就是http请求的路径:http://localhost:8080//mywebapp/weburl),尤其注意路径,否则无法解决no cookies问题的。(好像不一定要设定路径的)
   我自己的成功配置
            A: 新建一个http cookie manager”,不需要增加JSESSIONID变量,当录制完成以后,运行的时候,jmeter自动产生和管理,把给个请求都加上sessionId;
            B: 然后创建一个代理,目标:计划(自己定义的计划名称) --> 线程组(自己创建的线程组);  分组: 每个组放入一个新的控制器;  跟随重定向;
            C: 创建一个线程组
           以上配置就可以了。
其他方式参考:
问题是如何得到这个jsessionId?可以看http://lixf5409.iteye.com/blog/2064303的两种方法:
   1,第一次访问应用服务器的时候,应用服务器会产生一个sessionid用于维护客户端的信息,tomcat的sessionid的key是jsessionid。jsessionid可以通过chrome浏览器的Resources->Cookies获取到。 单个请求还可以,多个请求的话会重复配置很多请求的jsessionid。,其实把cookie管理升级到http请求为兄弟节点,就能被共享到所有http请求了。
   2.新建2个循环控制器:
登录-循环控制器和启动-循环控制器。登录-循环控制器的循环次数设置为1,启动-循环控制器的次数视性能测试情况设置。并在需要用到session的HTTP请求的上一级目录建立HTTP Cookie 管理器。 这样启动的时候就可以获取到session中的用户Id了。自动产生和管理?




设置QPS限制
通过设置定时器来控制QPS,一旦取样器的响应时间发生改变(网络环境发生改变),就需要重新调整定时器的等待时间。
  Jmeter提供了一个非常有用的定时器,称为Constant Throughput Timer (常数吞吐量定时器),该定时器可以方便地控制给定的取样器发送请求的吞吐量。
  右键点击线程组下面的请求 ,弹出菜单(添加--->定时器--->Constant Throughput Timer)选择Constant Throughput Timer


Constant Throughput Timer 的主要属性介绍:
名称 :定时器的名称
Target throughput(in samples per minute):目标吞吐量。注意这里是每分钟发送的请求数,因此,对应测试需求中所要求的20 QPS ,这里的值应该是1200 。
Calculate Throughput based on :有5个选项,分别是:
  This thread only :控制每个线程的吞吐量,选择这种模式时,总的吞吐量为设置的 target Throughput 乘以矣线程的数量。
  All active threads : 设置的target Throughput 将分配在每个活跃线程上,每个活跃线程在上一次运行结束后等待合理的时间后再次运行。活跃线程指同一时刻同时运行的线程。
  All active threads in current thread group :设置的target Throughput将分配在当前线程组的每一个活跃线程上,当测试计划中只有一个线程组时,该选项和All active threads选项的效果完全相同。
  All active threads (shared ):与All active threads 的选项基本相同,唯一的区别是,每个活跃线程都会在所有活跃线程上一次运行结束后等待合理的时间后再次运行。
  All cative threads in current thread group (shared ):与All active threads in current thread group 基本相同,唯一的区别是,每个活跃线程都会在所有活跃线程的上一次运行结束后等待合理的时间后再次运行。


聚合报告分析



图形报表

图表底部参数的含义如下:
样本数目是总共发送到服务器的请求数。
最新样本是代表时间的数字,是服务器响应最后一个请求的时间。
吞吐量是服务器每分钟处理的请求数。
平均值是总运行时间除以发送到服务器的请求数。
中间值是代表时间的数字,有一半的服务器响应时间低于该值而另一半高于该值。
偏离表示服务器响应时间变化、离散程度测量值的大小,或者,换句话说,就是数据的分布。



Badboy,只支持ie浏览器,很没意思。
=========================================================
使用Badboy录制Web性能测试脚本 http://book.51cto.com/art/201204/327317.htm



综合
==========================================
badboy + jmeter并发性能测试 http://www.cnblogs.com/java-koma/archive/2010/07/10/1774685.html



注意:
1. 安装文档中的说法,ext目录存放对JMeter的扩展,用户的扩展所依赖的包则要直接放在lib下
分享到:
评论

相关推荐

    Jmeter+Badboy压力测试软件包

    Apache JMeter是一款强大的、开源的性能测试工具,主要用来测试Web应用,但也可用于其他协议的服务。它支持多种类型的负载和性能测试,包括功能测试、性能测试、负载测试和稳定性测试。JMeter的特点包括: 1. **跨...

    jmeter和badboy

    Apache JMeter是一款开源、免费的性能测试工具,主要用于测试Web应用的负载和压力。它支持多种协议,包括HTTP、HTTPS、FTP、SMTP、JDBC等,能够模拟大量并发用户对服务器进行压力测试,从而评估系统的稳定性和性能。...

    jmeter+badboy

    Apache JMeter是一款开源的性能测试工具,主要设计用于Web应用的压力和负载测试,但也可以用于其他协议的测试。它可以帮助开发者和测试人员评估应用在高并发情况下的稳定性和响应时间,找出系统可能存在的瓶颈。...

    badboy+jmeter压力测试工具

    总的来说,"badboy+jmeter"组合是一个强大且灵活的压力测试解决方案,虽然相比于商业工具LoadRunner,它们可能更为精简,但它们提供的功能足以满足大多数性能测试需求,并且具有开源和成本效益的优势。对于IT专业...

    jmeter+badboy.zip

    性能测试工具jmeter+badboy安装包,可以用于性能测试,性能测试工具jmeter+badboy安装包,可以用于性能测试,性能测试工具jmeter+badboy安装包,可以用于性能测试,性能测试工具jmeter+badboy安装包,可以用于性能...

    jmeter3.1+badboy2.1.3.rar

    Apache JMeter和BadBoy是两款非常实用的性能测试工具,它们在测试过程中扮演着重要的角色。本文将深入探讨JMeter 3.1和BadBoy 2.1.3这两个版本的功能、使用方法以及如何结合使用以提升测试效率。 1. Apache JMeter ...

    Jmeter&Badboy

    JMeter 主要用于进行功能测试和性能测试,而 Badboy 则是作为 JMeter 的辅助工具,帮助记录和回放用户操作。 **Apache JMeter** Apache JMeter 是一个开源的、纯 Java 应用程序,设计用于进行负载和性能测试。它...

    jmeter&badboy;&ServerAgent;&JDK;&jmeter;手册.zip

    1. **JMeter**: Apache JMeter是一款开源的、完全基于Java的负载和性能测试工具。它主要用于测试Web应用,但也可用于其他协议如FTP、SMTP、HTTP、JMS等。JMeter能够模拟大量并发用户,生成详细的性能报告,包括响应...

    自动化测试JMeter插件+Badboy.zip

    JMeter是Apache软件基金会的一个开源项目,它是一款强大的性能测试工具,主要用于测试Web应用的负载和压力。JMeter可以进行功能测试、性能测试、负载测试以及稳定性测试,广泛应用于HTTP、FTP、SMTP、JDBC等多种协议...

    Jmeter+Badboy

    **JMeter** 是一款强大的、开源的性能测试工具,主要用于测试Web应用的负载和压力,也可用于其他服务的性能测试。它是由Apache软件基金会开发的,完全免费,并且支持多种协议,包括HTTP、HTTPS、FTP、JDBC等。JMeter...

    BadBoy脚本录制+JMeter测试实例(附聚合报告详解)

    BadBoy 脚本录制是指使用 BadBoy 工具对 Web 应用进行录制,生成脚本,并将其导出为 JMeter 格式,以便在 JMeter 中进行性能测试和压力测试。BadBoy 的录制功能可以自动记录用户的操作,并将其转换为可执行的脚本,...

    JMeter+badboy系统测试

    综上所述,JMeter和Badboy的结合使用,为系统测试提供了高效、准确的解决方案,尤其适合Web应用的性能测试和压力测试。通过熟练掌握这两款工具,性能测试工程师能够更好地评估和优化系统的性能表现。

    Jmeter_2.13&badboy

    首先,JMeter 2.13是一款由Apache软件基金会开发的负载和性能测试工具,适用于Web应用程序。它的主要特点是开源、跨平台,支持多种协议,如HTTP、HTTPS、FTP、JDBC等,使得测试范围广泛。JMeter允许用户创建复杂的...

    jmeter+Badboy+JMeterPlugins-Extras+JMeterPlugins-Standard+ServerAgent

    标题中的"jmeter+Badboy+JMeterPlugins-Extras+JMeterPlugins-Standard+ServerAgent"揭示了这个压缩包集合是一套完整的性能测试工具组合,主要用于Web应用的压力和并发测试。接下来,我会详细讲解这些组件的功能和...

    BadBoy jmeter测试录制脚本工具

    在IT行业中,性能测试是评估系统在高负载或大量并发用户下的表现的关键环节,而JMeter是Apache组织提供的一款开源、免费的性能测试工具,广泛应用于性能压力测试。BadBoy与JMeter的结合使用,为测试人员提供了一种...

    压力测试工具 jMeter+badboy

    我们可以用Badboy录制脚本,然后将录制的脚本导出为JMeter格式的脚本,最后将该脚本导入到JMeter,借助于JMeter强大的测试功能模拟大量的虚拟用户,进行复杂的性能测试。 具体的图形使用教程可以自行查找。

    badboy+jmeter

    BadBoy和JMeter是两种广泛使用的性能测试工具,在软件开发和质量保证过程中起着至关重要的作用。BadBoy是一款用于记录和回放Web应用程序交互的工具,而JMeter则是Apache组织开发的一款强大的性能测试框架,主要用于...

Global site tag (gtag.js) - Google Analytics