作为软件测试人员,我们经常会遇到压力测试、稳定性测试、功能测试、性能测试、兼容性测试等等,有时在工作中潜移默化的就已经在使用这些测试工具,但是我们没有太在意去总结梳理。如:在性能测试的过程中不同 工具 有什么异同点?等等的思考呢,经过几次的总结,今天首先将性能测试常用工具进行梳理。
那性能测试工具具有那些特点呢?我们来总结一下
关键特征:
1、支持HTTP/HTTPS协议,能够发送HTTP/HTTPS request;
2、支持用户场景(借用了LR中的词汇),能够以某种比例在不同的业务上分布用户数量;
3、支持事务;
4、支持参数化和关联(还是借用LR中的词汇);
5、能够获得和汇总请求响应时间等数据,能够提供响应时间汇总、事务/请求处理成功率等数据报表;
非关键特征:
1、能够以漂亮的图表展示出结果数据;
2、能够提供漂亮的用户界面(GUI);
3、能够提供良好的录制功能和调试环境;
另外,从我所测试的产品,和我个人的角度来说,我还希望工具具有以下功能:
1、能够灵活的扩展,例如,我的应用的后端(bakcend)和前端的通讯使用的是RPC方式,则我希望工具能够通过我已有的API直接对后端产生负载,进行负载测试;
2、可以使用命令行方式,采用批处理模式运行(不需要GUI),运行后的结果能够通过Email等发送给我,或是直接integration到一个可发布的web页面上;
3、收集得到的数据能够很容易的进行再处理(例如,以XML格式存储raw data);
4、工具本身具有很好的可信度,可以通过查看代码等方式,了解当意外发生时是工具本身的问题或是应用的问题。
Jmeter和LoadRunner工具对比
大体上,JMeter和LoadRunner都可以很好的完成关键特征中列出的任务,而LR在非关键特征方面表现更出色。不过,JMeter在我希望的更灵活的功能方面大获全胜。二者具体异同点如下:
1.jmeter的架构跟loadrunner原理一样,都是通过中间代理,监控&收集并发客户端发现的指令,把他们生成脚本,再发送到应用服务器,再监控服务器反馈的结果的一个过程.
2.分布式中间代理功能在Jmeter中也有,这个分布式分理是指可设置多台代理在不同PC中,通过远程进行控制,即通过使用多台机器运行所谓的Agent来分担Load Generator自身的压力,并借此来获取更大的并发用户数.loadrunner也有些功能.
3.Jmeter安装简单,只需要解压jmeter文件包到C盘上就可以了,其实是没有安装.要是你想执行调试测试脚本,前提是:装上jdk和netbean插件.而loadrunner安装包有1G多,在一台P3.0,1G内存的PC上安装要一个多小时.要是装过较旧的盗版还不能再装新版,解决办法倒是有,但麻烦且花时间.
4.Jmeter没有IP欺骗功能,IP欺骗是指在一PC台上多个IP地址来分配给并发用户.这个功能对于模拟较真实的客户环境来说,是较有用.loadrunner有此功能.
5.Jmeter也提供了一个利用本地Proxy Server(代理服务器)来录制生成测试脚本的功能,但是这个功能并不好用,测试对象的个别参数却要手工增加上去,还得附带装个IE代理,如GoogleToolbarDownloader这些插件来捕捉参数.但是有一个工具bodboy,利用这个工具可以录制操作,然后选择将脚本保存为Jmeter脚本,然后利用Jmeter可以打开并修改脚本
6.jmeter的报表较少,对于要分析测试性能不足以作为依据.如要知道数据库服务器或应用程序服务的CPU,memory等参数,得在相关服务器上另外写脚本记录服务器的性能.
7.Jmeter做性能测试,主要是通过增加线程组的数目,或者是设置循环次数来增加并发用户,而loadrunner可以通过在场景中选择要设置什么样的场景,然后选择虚拟用户数。
8.jmeter可以通过逻辑控制器实现复杂的测试行为,相当于loadrunner中的测试场景
9.Jmeter可以做web程序的功能测试,利用jmeter中的样本,可以做灰盒测试,loadrunner主要用作性能测试
10.jmeter是开源的,但是使用的人较少,网络上相关资料不全面,需要自己去揣摩,而loadrunner是商业软件,如果是正版,有技术支持,同时,网络上的资料相当多。
11.jmeter的脚本修改,主要是对jmeter中各个部件的熟悉程度,已经相关的一些协议的掌握情况,而不依赖于编程,而loadrunner除了复杂的场景设置外,还需要掌握函数,修改脚本。
总结:
性能测试工具的原理通常是:通过录制、回放脚本,模拟多用户同时访问被测试系统,模拟产生负载压力,监控并记录各种性能指标,生成性能分析结果和报告,从而完成性能测试的基本任务。牢记这一流程,你会更易选择测试工具。
欢迎加入 51软件测试大家庭,在这里你将获得【最新行业资讯】,【免费测试工具安装包】,【软件测试技术干货】,【面试求职技巧】... 51与你共同学习,一起成长!期待你的加入: QQ 群: 755431660
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Practical Django Projects, Second Edition
James Bennett / Apress / 2009 / 44.99
Build a django content management system, blog, and social networking site with James Bennett as he introduces version 1.1 of the popular Django framework. You’ll work through the development of ea......一起来看看 《Practical Django Projects, Second Edition》 这本书的介绍吧!