聊聊性能测试之压力工具

想要做性能测试,那必须得先从工具入手,针对目前市场上几款主流的压力工具,介绍介绍。

商业工具:

HP LoadRunner:这个工具放在第一个说,是因为早些年做性能测试的时候,基本市场上都是使用这个工具。LR工具功能齐全,对于复杂场景的处理能力和对结果数据的分析能力比较不错。但是呢,这个工具安装包就差不多1GB。光安装就要很久,在老的电脑上运行起来还不堪重负。因为是商业软件,是通过不同的协议的license 来购买,但除了一些银行,大型企业买,其余一些基本都是使用65536全协议的破解版本了。

开源工具:

Jmeter:随着互联网+的飞速发展,这个开源工具是互联网性能测试的最常用工具。基本上取代了loadrunner的地位,随着对JMeter使用的不断深入,我个人越来越倾向于在自己的工作中使用JMeter工具,并且也会不遗余力的向我认识的测试工程师推荐它。

   1、它是开源的,安装及其简单,只需要提前安装JDK,把jmeter文件包解压就可使用。

   2、可以通过各种逻辑控制器的组合来实现比较复杂的测试场景,但这里面也很多测试工程师踩过坑的,因为就算是相同的逻辑控制器,你顺序不一样,产生的场景也是不一样的。

  3、它的脚本修改,对于基本的场景需求主要是通过各个组件来控制,不依赖于编程。对于复杂或者一些特定的场景,可以通过自己编写代码实现其逻辑,这当然也得需要一点代码功底。如果能用的好,基本没有解决不了的场景。

  4、由于它的开源性,目前很多大的公司都是直接拿它的源码进行二次开发,最后整成适合自己公司的测试工具,甚至是测试平台。

tcpcopy :  它是一款具有复制在线server流量的工具。这款工具颠覆了以往的测试方法,在互联网+测试中比较火,因为互联网+测试迭代更新快,对于线上真实环境一些较为复杂的场景,在线下的测试场景中很难快速发现问题,或者很难重现问题,这个工具可以复制在线server流量到测试系统中,这样就引入在线的复杂场景到测试系统,从而可以在测试系统中充分暴露在线的问题,帮助用户提前解决在线问题,降低上线失误率或者实现零失误。做的好的,读写接口的都可以直接在线上回放,这也当然得需要成本的,还得架构支持,一般公司都是针对它进行二次开发后,加入个性化元素再使用。

Gatling:开源免费,它是一款基于Scala 开发的高性能服务器性能测试工具,它主要用于对服务器进行负载等测试,并分析和测量服务器的各种性能指标。Gatling主要用于测量基于HTTP的服务器,比如Web应用程序,RESTful服务等。Gatling适用的场景包括:测试需求经常改变,测试脚本需要经常维护;测试环境的客户机性能不强,但又希望发挥硬件的极限性能;能对测试脚本进行很好的版本管理,并通过CI进行持续的性能测试;希望测试结果轻量易读等;喜欢它的原因有好几个:

     1、支持实时生成Html动态轻量报表,从而使报表更易阅读和进行数据分析,打开速度比较快。

     2、 支持DSL脚本,从而使测试脚本更易开发与维护

      3、 支持Maven,Eclipse,IntelliJ等,以便于开发

      4、 支持Jenkins,以便于进行持续集成

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 174,384评论 25 709
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,283评论 4 61
  • 四月六曰,阳光朗照,春风拂面。下午三时,我骑单车去访八柏冢。 我十几年前曾去过八柏冢,它位于许昌城北两公里陈庄西南...
    秋山秋水阅读 666评论 5 2
  • 勿空:师父,今天我问个问题,您肯定答不上来,嘿嘿! 无师:我答不上来,你有什么可高兴的呢?但说无妨...... 勿...
    祥云_17ec阅读 801评论 0 0
  • 感觉自己有强迫症,看书总是要一字不落地看完,不然总觉得缺点什么。看电视剧也是,别人早就拖着进度条把一部剧看完了,我...
    赵三多阅读 144评论 0 4