腾讯优测解读性能测试的使用工具

常用性能测试工具简介
性能测试工具,从理论上来讲在性能测试过程中使用到的所有工具都可以称其为性能测试工具,通常分为以下几类:
(1)服务器端性能测试工具:需要支持产生压力和负载,录制和生成脚本,设置和部署场景,产生并发用户和向系统施加持续的压力。
(2)web前端性能测试工具:需要关于心浏览器等客户端工具对具体需要展现的页面的处理过程。
(3)移动端性能测试工具:同web端性能测试工具也需要关心页面的处理过程,另外还要具体数据采集的功能,比如:手机CPU、内存、电量,启动时间等数据的记录。
(4)资源监控工具:这个主要是能够收集性能测试过程中的数据以及良好的结果展现方式。

2.1.1 LoadRunner
LoadRunner是一种预测系统行为和性能的负载测试工具,通过模拟实际用户的操作行为进行实时性能监测,来帮助测试人员更快的查找和发现问题。LoadRunner适用于各种体系架构,能支持广泛的协议和技术,为测试提供特殊的解决方案。企业通过LoadRunner能最大限度地缩短测试时间,优化性能并加速应用系统的发布周期。
LoadRunner提供了3大主要功能模块:Virtual User Generator(用于录制性能测试脚本),LoadRunner Controller(用于创建、运行和监控场景),LoadRunner Analysis(用于分析性能测试结果)既可以作为独立的工具完成各自的功能,又可以作为LoadRunner的一部分彼此衔接,与其他模块共同完成软件性能的整体测试。
系统要求:Microsoft Windows和Linux
参考:《性能测试入门——LoadRunner使用初探 (性能测试入门–LoadRunner使用初探 》https://www.cnblogs.com/tangbohu2008/p/10688635.html
2.1.2 Apache JMeter
JMeter作为一款广为流传的开源压测产品,最初被设计用于Web应用测试,如今JMeter可以用于测试静态和动态资源,例如静态文件、Java 小服务程序、CGI 脚本、Java 对象、数据库、FTP 服务器等等,还能对服务器、网络或对象模拟巨大的负载,通过不同压力类别测试它们的强度和分析整体性能。另外,JMeter能够对应用程序做功能/回归测试,通过创建带有断言的脚本来验证你的程序返回了你期望的结果。为了最大限度的灵活性,JMeter允许使用正则表达式创建断言。
JMeter的特点包括对HTTP、FTP服务器、数据库进行压力/性能测试;完全的可移植性;完全 Swing和轻量组件支持包;完全多线程;缓存和离线分析/回放测试结果;可链接的取样器;具有提供动态输入到测试的功能;支持脚本编程的取样器等。在设计阶段,JMeter能够充当HTTP PROXY(代理)来记录浏览器的HTTP请求,也可以记录Apache等WebServer的log文件来重现HTTP流量,并在测试运行时以此为依据设置重复次数和并发度(线程数)来进行压测。
参考文章:《云智慧压测实战分享之JMeter工具使用初探(云智慧压测实战分享之JMeter工具使用初探)》https://blog.csdn.net/chongdudu5779/article/details/100863345
2.1.3 NeoLoad
NeoLoad是Neotys出品的一种负载和性能测试工具,可真实地模拟用户活动并监视基础架构运行状态,从而消除所有Web和移动应用程序中的瓶颈。NeoLoad通过使用无脚本GUI和一系列自动化功能,可让测试设计速度提高5-10倍,并将维护的脚本维持在原始设计时间的10%,同时帮助用户使用持续集成系统自动进行测试。
NeoLoad支持WebSocket、HTTP1 / 2、GWT、HTML5、AngularJS、Oracle Forms等技术协议,能够监控包括操作系统,应用服务器,Web服务器,数据库和网络设备在内的各种IT基础设施,同时可以通过Neotys云平台发起外部压力。
2.1.4 WebLOAD
WebLOAD是来自Radview公司的负载测试工具,它可被用以测试系统性能和弹性,也可被用于正确性验证(验证返回结果的正确性)。其测试脚本是用Javascript(和集成的COM/Java对象)编写的,并支持多种协议,如Web(包括AJAX在内的REST/HTTP)、SOAP/XML及其他可从脚本调用的协议如FTP、SMTP等,因而可从所有层面对应用程序进行测试。
WebLOAD是用户负载大、测试需求复杂的企业的首选工具。它允许通过从云和本地机器生成负载,在任何internet应用程序上执行负载和压力测试。其优势在于它的灵活性和易用性——允许您使用基于dom的录制/回放、自动相关性和JavaScript脚本语言等特性快速定义所需的测试。 该工具提供了对web应用程序性能的清晰分析,指出了可能阻碍实现负载和响应需求的问题和瓶颈。
WebLOAD支持数百种技术——从web协议到企业应用程序,并内置与Jenkins、Selenium和许多其他工具的集成,以支持DevOps的持续负载测试。
2.1.5 Loadster

Loadster是 基于桌面的高级HTTP负载测试工具。用于测试高负载下网站、Web应用、Web服务的性能表现,支持Linux,Mac和Windows等运行环境。
Loadster能够对Web应用/服务的Cookies、线程、头文件、动态表格等元素发起测试,获得Web在压力下的性能、弹性、稳定性和可扩展性等方面的表现。使用GUI可以使用动态变量修改基本脚本以验证响应。 通过控制网络带宽,可以为应用程序压力测试模拟大型虚拟用户群。 测试执行后,生成HTML报告进行分析。此工具最适合识别应用程序中的性能瓶颈。
2.1.6 Load impact
Load impact是一款服务于DevOps的性能测试工具,支持各种平台的网站、Web应用、移动应用和API测试。Load impact可以帮助用户了解应用的最高在线用户访问量,通过模拟测试不同在线人数下网站的响应时间,估算出服务器的最大负载。
Load impact的使用非常简单,只需要输入网址进行测试,便可统计出加载网站的一些详细数据。包括整体加载和站内图片,javascript, CSS等代码载入。可以在右侧列表选择不同文件来同时对比最多三个对象的加载数据,并生成图表显示,方便网站设计者来分析。测试完成之后,网站还可以存储测试过的统计数据。
2.1.7 CloudTest
CloudTest 是一个集性能和功能测试于一体的综合压力测试云平台,专为现代网络和移动应用测试而设计开发,CloudTest可以图形化实现判断、循环,整体减轻了测试开发的工作量,缩短了开发时间。CloudTest基于内存的分析引擎,可以实时收集和展示数据,所有数据在3秒内汇聚显示。
CloudTest采用虚拟化技术,完美的配合公有/私有云计算技术,无需过多的硬件,带宽资源的投入,人力维护成本几乎为零,测试按需获得,远程接入,适合多团队协作。各种规模的模拟成本均远远优于传统工具,同时大大缩短了测试周期。
2.1.8 Loadstorm
Loadstorm是一款针对Web应用的云端负载测试工具,通过模拟海量点击来测试Web应用在大负载下的性能表现。由于采用了云资源,所以Loadstorm的测试成本非常低,用户可以在云端选择创建自己的测试计划,测试标准和测试场景。
Loadstorm最多可以生成多达50000个并发用户,通过数以千计的云服务器发起访问。使用Loadstorm不需要任何脚本知识,同时提供多样化的测试图表和报告模版,用于准确测量Web应用的各项性能指标,如错误率,平均响应时间和用户数量等。Loadstorm可以申请免费试用,但更多压力和功能需要开通高级帐户。
2.1.9 Locust
Locust翻译过来的意思是”蝗虫“,从字面上可以理解就像是一群蝗虫对你的系统蜂拥而上。
事实上Locust就是一款基于python语言的分布式用户负载测试工具,易于使用和扩展,并
能直观展示基本的压测结果。
安装方法:
1、安装python
2、pip install locust
特点
①、不需要编写笨重的UI或者臃肿的XML代码,基于协程而不是回调,脚本编写简单易读;
②、有一个基于we简洁的HTML+JS的UI用户界面,可以实时显示相关的测试结果;
③、支持分布式测试,用户界面基于网络,因此具有跨平台且易于扩展的特点;
④、所有繁琐的I / O和协同程序都被委托给gevent,替代其他工具的局限性;

腾讯优测:https://utest.21kunpeng.com/home

猜你喜欢

转载自blog.csdn.net/weixin_46033259/article/details/111356047
今日推荐