网站速度检测工具怎么选?看这篇性能测试指南

检测维修 0 68

针对这个系列开展持续学习, 这一章节着重阐述当下流行的性能测试工具, 也包括怎样去挑选适应项目的工具。在这之前, 我针对性能测试工具的原理以及架构实施了系统分析。

http://www.cnblogs.com/fnng/archive/2012/07/31/2617546.html

性能测试工具的选择与评估

在性能工具原理与架构这一章节里, 我们知道了性能测试工具的原理一般是这样的, 先是通过录制脚本, 接着进行回放脚本, 然后模拟众多用户同时去访问那个被测试的系统, 进而模拟出负载压力, 之后要监控并且记录各种各样的性能指标, 按照这些生成性能分析结果以及相关报告, 借着这些达成性能测试的基本任务。

对于那些需要开展性能测试的组织而言, 去决定选用哪一种性能测试工具并非是个简易的问题。我们得对性能需求展开分析, 还要对购买成本予以考量, 同时也要顾及人员学习使用成本, 并据此来分辨最契合此次性能测工具。

注: 这里所说的性能测试工具, 是狭义层面的性能测试工具, 专门指那种有着脚本生成、负载生成以及测试数据搜集这些功能的性能测试工具, 从广义角度而言, 在性能测试进程里所运用的所有工具, 都能够称作性能测试工具, 这其中涵盖了, 软件协议分析工具, 测试数据生成工具, 测试监控工具等, 均属于性能测试工具的范畴。

我的软件性能测试工具被划分作三类, 分别是向使用者收取费用的商业工具, 免费且开放源代码的工具, 自行开展研究与开发而形成的工具。接下来是这三种工具相互间的对比:

通过上述的比较剖析, 极难判定对于某一种类工具的抉择, 它们分别有着显著的长处, 当然也存在显著的短处, 怎样更为妥善地挑选工具, 在此便需要契合实际性能的需求了。

需要考虑以下几个方面:

性能需求:

起初要思索的是不是契合性能需求, 比如说系统的协议不予以支持, 没办法创建脚本, 系统的模拟用户数量达不到标准, 或者某些特殊功能没办法进行测试,像流媒体性能测试之类的。有些具备性能工具是无法达成这些需求的, 那自然得首先排除。

购买成本:

商业工具的购买成本, 是我们要考虑的, 也是老板需要考虑的, 像性能测试成本的整体预算等。当然, 满足性能需求前提下, 一切应从简, 若只需某商业软件部分功能, 可只买部分功能 , 有的是依据支持协议数量, 并发用户上限区分, 比如loadrunner。 ——每一句都好懂就怪了 句号处加个空格让它显得更怪一些。

这儿得再多说一些, loadrunner在性能测试领域堪称巨无霸, 其每年的服务费高达数百万, 不是普通的小公司有望承受的, 或许好些网友因习惯使用破解版而对此不以为意。并且loadrunner能够定制, 正常的商业软件也都具备可定制性, 意思就是, 要是你存在特定需求, 只要你乐意掏钱, 供应商都能够为你进行定制开发。如此算下来成本会相当高。

那么, 开源软件究竟如何呢? 开源的性能测试工具数量着实不少, 只因它们各自适用不同的需求场景, 故而, 其体积相较于商业软件要小许多, 当然功能也就相对简单。然而, 它们在某些情形下能够充分满足某些性能需求, 要么借助好几款开源工具协同达成满足, 要么经由对开源工具予以扩展来达成满足。对开源工具进行扩展, 这对测试人员的要求颇高。要求测试人员对工具的原理以及源代码具备相当深入的研究。于此, 对测试人员自动能力的提升有着极大的助力。

也许你的性能测试项目独具特性, 在市面上搜寻查找了全部的性能工具, 却没一款能让你满意, 商业定制的花费过高。又或许你想要打造建构出属于自己的工具体系。鉴于处于公司需求所具备的特殊性以及长期性的考量, 可以依靠自身力量开发制作一个性能测试工具以供使用。进行一回开发后便能够收获永久的收益(当然这也需要进行维护以及升级、扩展等操作), 并且还更契合自身的需求。当下有许多知晓闻名的大公司都拥有属于自己的性能测试工具, 用于内部的使用。

人员学习成本:

网站速度检测工具_性能测试工具选择标准_性能测试工具比较分析

最后的最后要提及的便是人员针对工具的学习成本, 实际上, 测试人员于挑选性能测试工具之际最先进行考量的乃是从自身会运用的工具着手, 如此这般能够以最低限度去把控学习成本, 要是面对一整个工具, 测试人员单单学习测试脚本就耗费了半年时间, 老板早就将会让你离开公司了。这同样也是对性能测试人员存在较高要求的所在之处。所以, 对于性能测试人员来讲, 你最好是熟悉一款具备流程的商业性能工具, 一款开源免费的性能工具, 还务必要去熟悉常见的性能脚本开发语言等等, 这可是基本的要求。

性能测试工具介绍

商业工具 :

QA Load, Compuware公司的那个QALoad, 是用于客户/服务器系统的自动化负载测试工具, 也是企业资源配置(ERP)以及电子商务应用的自动化负载测试工具。QALoad属于QACenter性能版的一部分, 它借助可重复的、真实的测试, 能够全面地度量应用的可扩展性和性能。QACenter汇聚完整的跨企业的自动测试产品, 是专门为提高软件质量而设计的。QACenter能够在整个开发生命周期, 跨越多种平台, 自动执行测试任务。

SilkPerformer, 是一种用于工业领域的、处于最高级别的企业级负载测试工具, 它能够模仿数量成千上万的用户, 在多协议还有多计算的环境当中进行工作, 不论企业电子商务应用的规模是大还是小, 以及其具备怎样的复杂性, 借助SilkPerformer, 都能够在部署之前预测其性能。可以帮助我们迅速解决问题的, 是可视的用户化界面, 以及实时的性能监控, 还有强大的管理报告, 比如加快产品投入市场的时间, 借助最小的测试周期保证系统的可靠性, 优化性能并确保应用的可扩充性。

LoadRunner, 是一类具备较高规模适应性的工具, 它能够预测系统行为以优化性能, 属于自动负载测试工具范畴, 它着重于整个企业的系统, 借助模拟实际用户操作行为以及采用实时性能监测方式, 予以支持最宽范围协定及技术, 来帮您更迅速地确认与查找问题, 为您的特殊情况定制提供针对性解决方案, 从而助力您更快地确认和查找其中问题。

RadView公司推出的WebRunner, 是一个性能测试和分析工具, 它能让自动执行压力测试的web应用程序开发者, 通过以模拟真实用户操作为方式生成压力负载这一途径, 对web的性能展开测试, 其中用户创建的基于javascript的名为议程agenda的测试脚本, 被用于以执行该脚本为手段模拟客户行为, 进而通过执行该脚本这个动作来衡量web应用程序在真实环境下的性能, 而webload亦是借助模拟真实用户操作来生成压力负载以测试web性能。

也是一款性能测试工具之举, 指向 IBM Rational Performance Tester(简称 RPT), 此等工具适用于基于 Web 的应用程序的性能以及可靠性测试来着。Rational Performance Tuller 将易用性同深入分析功能予以结合, 进而简化了测试创建这项事宜, 还有负载生成以及数据收集也是被连带简化。借此帮助确保应用程序拥有支持可达数以千计并发用户且稳健运行的性能哟。

开源或免费工具:

这款由Apache组织打造的基于Java的压力测试工具Apache JMeter, 是用来给软件开展压力测试的, 它一开始被规划作Web应用测试, 不过后来延伸至其他测试领域, 它能够用于检测静态和动态资源, 像静态文件、Java小服务程序、CGI脚本、Java对象、数据库、FTP服务器等等这样的。JMeter可用于对服务器、网络或对象模拟极大的负载, 从而在不同压力类别情形下测试它们的强度以及剖析整体性能。

AutoBench是一款Perl脚本, 它基于httperf, 会在一次测试里多次调用httperf, 以此对web服务器开展测试, 每次会依据给定参数增加并发连接数, 还会把httperf的测试结果保存成CSV格式的文件, 这个文件能够被Excel直接读取, 便于生成测试报告, 借助autobench自带的bench2graph工具能够生成漂亮的测试结果对比图。

ApacheBench工具程式, 也就是ab, 它属于Apache网站伺服器软体附带的工具软体, 其专门用于执行网站伺服器的运行效能, 尤其是针对Apache网站伺服器进行效能分析。这支程式起初是被用来检测的, 检测对象是Apache网站伺 服器, 检测其中Web Server所能够提供的效能, 尤其是能够看出Apache网站伺服器每秒能送出多少网页, 当然的, 它也可以用在任何其他的网 站伺服器, Apache ab的全称是ApacheBench, 它是Apache附带的一个小工具, 专门用于HTTP Server的benchmark testing, 它还可以同时模拟多个并发请求。

curl-loader, 也就是那个被叫做“omes-NIK”以及“davilka”的, 它是借助C语言编写出来的、一个开源的工具。该工具能模拟应用负载, 还可以模拟成千上万的几十万人的客户端应用程序的行为。这些客户端应用程序包括HTTP / HTTPS和FTP / MTPS的, 它们每个都有自己的源IP地址。相反, 有着其他的curl-loader, 其使用的是由真正的C所编写的客户端协议栈, 也就是libcurl, 以及TLS/openssl的SSL的HTTP和FTP协议栈, 它是支持登录以及验证口味, 还有模拟用户行为的工具。

Iago, 是一款用于网站负载测试的工具, 它会针对给定网站开展访问录制, 进而合成流量数据, , 有别于其他负载生成工具, 它会努力维持恒定的请求率, 比如说, 要是你打算按照每分钟100K的速率去请求你的服务, Iago就会设法保持此速度来实施测试。

Pylot是一款开源工具, 这款工具用于测试Web Service性能和扩展性, 它运行HTTP负载测试, 这种测试对于制定容量计划很有用, 对于确定基准点也很有用, 对于分析系统瓶颈同样有用, 对于系统调优还是很有用。处于使用过程中时, Pylot会发起并发请求, 也就是HTTP Requests, 它会检验服务器响应, 同时还会带有相关指标的报表。它借助GUI或者Shell/Console来执行和监视对被测试网站的测试过程。

说到性能测试工具, 那可是相当多, 假如你是开源的拥趸, 那就可以去到开源中国逛逛, 在那儿存有诸多极为出色的开源软件。

相关推荐: