10大主流性能测试工具,总有一款适合你

article/2025/8/23 15:46:36

在这里插入图片描述
市面上流行的压力/负载/性能测试工具多是来自国外,近年来国内的性能测试工具也如雨后春笋崛起。同时由于开发的目的和侧重点不同,其功能也有很大差异,下面就为您简单介绍10款目前最常见的测试产品。

图片

01 kylinTOP测试与监控平台(商用)

kylinTOP测试与监控平台是一款B/S架构的跨平台的集性能测试

、自动化测试、业务监控于一体的测试平台,它是深圳是奇林软件有限公司旗下的一款产品,该工具开放10个免费虚拟用户可供学习和使用。在易用性上较好,录制脚本支持最新版本的浏览器,对谷歌和火狐都支持非常好。

对一些https.的网站证书问题,都为用户自动处理好了,可以轻松录制。录制过程高效便捷这是其它性能工具无法比拟的。仿真能力上是目前业界做的最好的性能工具,可以做到完全仿真浏览器行为,也就是单用户的HTTP请求瀑布图可以和浏览器完全一样。总之它是目前国内一款非常难得好用的性能测试工具,可以完全替代国外的同类产品。目前在军工领域、测评检测机构、国有企业、银行体系、大型企业有着广泛的应用。支持的协议较多,尤其在视频领域支持的协议非常多,具有独特的优势。

官网地址:http://www.70testing.com

02 LoadRunner(商用)

是一款C/S架构的商业版性能测试工具,在国内存在的时间较早,在国内在使用较广泛,知名度较高。该工具免费开放了50个虚拟用户,可供学习和使用。在国内的网站上有破解版本,但是到了最新的12版本,不再有破解版。破解版的仿真度较差,HTTP的瀑布图是按两个两个并发(与浏览器行为不一样),最新版本的仿真相对提高很多,对于HTTP静态请求相似度请求提高到80%,而动态请求就要差很多。

由于loadRunner起步早,支持的协议很多,很多不常用的协议都支持,如电子邮件相关协议都支持。但对一些视频协议支持的不太好。loadrunner目前对浏览器最新版支持的不太好,最新的loadrunner12只支持ie11,对其它浏览器如谷歌、火狐等支持的较差。在脚本录制方面有些网站录制不了。价格上比较昂贵,一般小企业无力承担。

LoadRunner官网:https://saas.hpe.com/zh-cn/software/loadrunner

03 kylinPET(商用)

kylinPET 和 kylinTOP是国产化性能测试工具当中的娇娇者。在外观设计风格和LoadRunner很相近,但在脚本录制调试上做了大量的优化和提升。

性能工具一般由四部分组成:

  • 脚本编辑器
  • 并发控制器
  • 分析器
  • 执行器

kylinPET的脚本编辑器的脚本录制功能有着强悍的表现,脚本录制支持的浏览器包括:Chrome,Firefox,IE,UOS浏览器、龙芯浏览器等。优其对脚本的调试功能,有着不一般的表现:录制与回放对比、回放结果可视化展示、关联功能扫描等。

性能最主要的功能是:

  • 脚本制作
  • 场景配置
  • 指标统计与监控

kylinPET在这三个方面都做到了极致。下图所示的脚本回放调试,可以显示每个请求调试结果的瀑布图、回放与录制结果对比、验证页面等都做的非常完善,是替代国外性能测试,进军CNAS和CMA领域最有替力的国产性能工具:

图片

脚本调试

不仅如此,在任务执行的指标监控上,也提供了可观测试的指标曲线图:

图片

场景执行及指标监控

官网地址:http://www.70testing.com

04 Apache JMeter(开源免费)

JMeter是一款开源免费的压测产品,最初被设计用于Web应用功能测试使用,如今JMeter被国内企业用于性能测试。对于WEB服务器(支持浏览器访问),不建议使用Jmeter,因为jmeter的线程组都是线性执行的,与浏览器相差很大,测试结果不具有参考性。对于纯接口的部分场景(对接口调用顺序无严格要求)测试可以使用,但是要注意使用技巧,才能达到理想结果。

官网链接:http://jmeter.apache.org/

05 NeoLoad(商用版)

NeoLoad是Neotys出品的一种负载和性能测试工具,可真实地模拟用户活动并监视基础架构运行状态,从而消除所有Web和移动应用程序中的瓶颈。NeoLoad通过使用无脚本GUI和一系列自动化功能,可让测试设计速度提高5-10倍,并将维护的脚本维持在原始设计时间的10%,同时帮助用户使用持续集成系统自动进行测试。

NeoLoad支持WebSocket、HTTP1/ 2、GWT、HTML5、AngularJS、Oracle Forms等技术协议,能够监控包括操作系统

,应用服务器,Web服务器,数据库和网络设备在内的各种IT基础设施,同时可以通过Neotys云平台发起外部压力。

官网链接:http://www.neotys.com/product/overview-neoload.html

06 WebLOAD(商用版)

WebLOAD是来自Radview公司的负载测试工具,它可被用于测试系统性能和弹性,也可被用于正确性验证(验证返回结果的正确性)。其测试脚本是用Javascript(和集成的COM/Java对象)编写的,并支持多种协议,如Web(包括AJAX在内的REST/HTTP)、SOAP/XML及其他可从脚本调用的协议如FTP、SMTP等,因而可从所有层面对应用程序进行测试。

WebLOAD存在免费和专业两个版本:

  • 免费版本支持50个虚拟用户
  • 专业版还提供更多的报告和协议供用户选择

WebLOAD通常用作QA团队的独立运行工具,在开发周期的验证阶段,被测系统(System Under Test,SUT)投入实用之前,在模拟环境中对被测系统进行测试。

官网链接:http://www.radview.com/

07 Loadster(商用版本)

是一款商用负载测试软件,用于测试高负载下网站、Web应用、Web服务的性能表现,支持Linux,Mac和Windows等运行环境。

Loadster能够对Web应用/服务的Cookies、线程、头文件、动态表格等元素发起测试,获得Web在压力下的性能、弹性、稳定性和可扩展性等方面的表现。

官网链接:http://www.loadsterperformance.com/

08 Loadstorm(商用版本)

Loadstorm是一款针对Web应用的云端负载测试工具,通过模拟海量点击来测试Web应用在大负载下的性能表现。由于采用了云资源,所以Loadstorm的测试成本非常低,用户可以在云端选择创建自己的测试计划,测试标准和测试场景。

Loadstorm最多可以生成多达50000个并发用户,通过数以千计的云服务器发起访问。使用Loadstorm不需要任何脚本知识,同时提供多样化的测试图表和报告模版,用于准确测量Web应用的各项性能指标:

  • 错误率
  • 平均响应时间
  • 用户数量

Loadstorm可以申请免费试用,但更多压力和功能需要开通高级帐户

官网链接:http://loadstorm.com/

09 Load impact(免费使用)

是一个在线可以免费测试网站负载能力,它就可以满足你的基本要求, 当然成为他的付费用户测试的项目将会更多。

Load impact是一款服务于DevOps的性能测试工具,支持各种平台的网站、Web应用、移动应用和API测试。Loadimpact可以帮助用户了解应用的最高在线用户访问量,通过模拟测试不同在线人数下网站的响应时间,估算出服务器的最大负载。

Load impact的使用非常简单,只需要输入网址进行测试,便可统计出加载网站的一些详细数据。包括整体加载和站内图片,javascript, CSS等代码载入。可以在右侧列表选择不同文件来同时对比最多三个对象的加载数据,并生成图表显示,方便网站设计者来分析。测试完成之后,网站还可以存储测试过的统计数据。

官网链接:http://loadimpact.com/

特别提醒:

由于此测试数据发生在国外,一般反映出的是国外用户访问您要测试的网站的速度参数,具有一定的参考性

对于国内主机,并且主要客户来自于国内的用户来说请慎重将此数据作为依据

10 OpenSTA(开源免费)

OpenSTA是一个免费的、开放源代码的web性能测试工具,能录制功能非常强大的脚本过程,执行性能测试。例如虚拟多个不同的用户同时登陆被测试网站。其还能对录制的测试脚本进行,按指定的语法进行编辑。在录制完测试脚本后,可以对测试脚本进行编辑,以便进行特定的性能指标分析。其较为丰富的图形化测试结果大大提高了测试报告的可阅读性。

OpenSTA 基于CORBA 的结构体系,它通过虚拟一个proxy,使用其专用的脚本控制语言,记录通过proxy 的一切HTTP/S traffic。通过分析OpenSTA的性能指标收集器收集的各项性能指标,以及HTTP 数据,对系统的性能进行分析。虽然OpentSTA具有这么多的优点,缺点也很多。

OpentSTA在2007年以后就已经停止维护,脚本录制对浏览的支持ie只支持到ie6,想使用的小朋友需要降低浏览器版本。OpentSTA脚本与LoadRunner类似,提供的是函数封后的脚本,需要增加一些学习成本

图片

脚本

管网地址:http://opensta.org/

11 总结

商用性能工具在易用性(脚本生成)、并发模型、统计指标上要比开源免费软件要好很多,可以大大提高工作效率,降低使用难度,在统计指标上要丰富的多。免费开源软件的优点就是免费,不用花钱。但使用难度大,统计指标少,在仿真能力上比较弱。如何选择主要看使用者的经济能力和使用频度。如果是使用频繁,免费的软件实际使用成本比商用软件还要贵。

下面是一份配套资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!
在这里插入图片描述
这些都可以在公众号:伤心的辣条 ! 免费领取,还有一份216页软件测试工程师面试宝典文档资料。以及相对应的视频学习教程免费分享!,其中资料包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。

学习不要孤军奋战,最好是能抱团取暖,相互成就一起成长,群众效应的效果是非常强大的,大家一起学习,一起打卡,会更有学习动力,也更能坚持下去。你可以加入我们的测试技术交流扣扣群:914172719(里面有各种软件测试资源和技术讨论)

喜欢软件测试的小伙伴们,如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!


好文推荐

转行面试,跳槽面试,软件测试人员都必须知道的这几种面试技巧!

面试经:一线城市搬砖!又面软件测试岗,5000就知足了…

面试官:工作三年,还来面初级测试?恐怕你的软件测试工程师的头衔要加双引号…

什么样的人适合从事软件测试工作?

那个准点下班的人,比我先升职了…

测试岗反复跳槽,跳着跳着就跳没了…


http://chatgpt.dhexx.cn/article/YlMresNE.shtml

相关文章

10个常用的软件测试工具,你不容错过

在现代软件开发中,软件测试是不可或缺的一部分。为了确保软件产品的质量和稳定性,软件测试工具成为了测试团队的得力助手。 有许多优秀的软件测试工具可以帮助测试人员在各种测试活动中提高效率和准确性。 本文将介绍10个常用的软件测试工具,…

Android 实现锚点定位

相信做前端的都做过页面锚点定位的功能&#xff0c;通过<a href"#head"> 去设置页面内锚点定位跳转。 本篇文章就使用tablayout、scrollview来实现android锚点定位的功能。 效果图&#xff1a; 实现思路 1、监听scrollview滑动到的位置&#xff0c;tablayout切…

为什么定位不了HTML,css 锚点定位不了

css 锚点定位不了 css 锚点定位不了只有一个原因&#xff0c;就是书写错误&#xff0c;锚点的正确书写方式有两种&#xff0c;下面为各位介绍一下。 1、使用a标签设置锚点&#xff1a; ①&#xff1a;设置一个锚点链接 html&#xff1b;(注意&#xff1a;href属性的属性值最前面…

vue项目中实现锚点定位

使用场景&#xff1a;当页面被分割成许多小模块&#xff0c;且页面很长时&#xff0c;锚点功能可以帮助我们快速跳转到想要的模块&#xff1b;而当滑动滚动条时&#xff0c;根据当前视图中的显示的模块自动选中对应的锚点。 思路 锚点的id对应模块的元素的id。点击锚点时&#…

Vue3项目中锚点定位实现

代码 <!doctype html> <html class"no-js"><head><meta charset"utf-8"><title>锚点</title><script src"https://unpkg.com/vue3/dist/vue.global.js"></script><link rel"styleshee…

锚点定位——如何设置锚点居页面顶部距离,锚点定位并距离顶部一定偏移

锚点是网页制作中超级链接的一种&#xff0c;又叫命名锚记。命名锚记像一个迅速定位器一样是一种页面内的超级链接&#xff0c;运用相当普遍。 使用命名锚记可以在文档中设置标记&#xff0c;这些标记通常放在文档的特定主题处或顶部。然后可以创建到这些命名锚记的链接&#…

vue中实现锚点定位

vue中实现锚点定位 通过监听滚动事件&#xff0c;高亮显示锚点按钮添加点击事件&#xff0c;根据锚点滚动至对应区域并实现平滑滚动 这里主要是实现了一个简单的滚动触发锚点高亮&#xff0c;以及点击锚点触发滚动的功能 如果是获取浏览器的滚动高度&#xff0c;各个浏览器有所…

VUE实现锚点定位

文章目录 锚点定位功能总述提取标签内的关键词目录的渲染和点击跳转1.目录渲染2.锚点跳转 总结 锚点定位功能总述 在系统中会有管理端和客户端两种&#xff0c;在管理端中通过wangediter发布文章&#xff0c;然后在客户端中获取文章的数据&#xff0c;将其中h1和h2标签中的文字…

Vue锚点定位

VUE锚点定位 // 点击此处<div click"goDingyue">立即订阅</div>绑定事件 methods: {goDingyue() {// 获取元素在页面中的位置console.log(this.$refs.dingyue_box_ref.getBoundingClientRect());// document// .getElementById("agentTitle&qu…

jquery锚点定位

jquery实现锚点定位功能 这里主要是通过jquery实现了一个简单的滚动触发锚点高亮&#xff0c;以及点击锚点触发滚动的功能 $leftnav为左侧楼层导航栏(left-nav)&#xff0c;右侧right-content-body为滚动区域。主要是利用了scrollTo()和对滚动区域scroll事件的监听实现锚点定位…

锚点定位

1. 例如我们在做一个很长的网页时&#xff0c;需要在页面内做一个导航&#xff0c;点击导航里的链接不是新开一个窗口或者跳转到其他网址&#xff0c;而是跳转到当前页的某一个位置。那么所要跳转到的那个位置&#xff0c;我们就叫做锚点&#xff0c;它是一种在页面内部定位的…

uniapp锚点定位

uniapp 锚点定位 需求&#xff1a;在 uniapp 写 App 时&#xff0c;根据后端接口返回的数据渲染图文&#xff0c;并且要对图片进行锚点定位。 前提&#xff1a;后端要给每张图片一个单独的参数&#xff0c;用来区分每张图片。 思路&#xff1a;前端将这个特定参数注入到图片标…

如何设置锚点居页面顶部距离

锚点是网页制作中超级链接的一种,又叫命名锚记。命名锚记像一个迅速定位器一样是一种页面内的超级链接,运用相当普遍。 使用命名锚记可以在文档中设置标记,这些标记通常放在文档的特定主题处或顶部。然后可以创建到这些命名锚记的链接,这些链接可快速将访问者带到指定位…

锚点定位的三种解决方法

因为在项目中遇到锚点定位的问题&#xff0c;觉得有必要单独成文&#xff0c;来介绍锚点定位的解决办法。 一 学习锚点定位之前的知识储备: 1.1 #号的作用 #代表网页中的一个位置。其右面的字符&#xff0c;就是该位置的标识符。比如&#xff0c;http://www.example.com/ind…

什么是 cookie? 会话 cookie 与持久性 cookie 之间 有何区别?

转载&#xff1a; https://www.cisco.com/c/en/us/products/collateral/security/web-security-appliance/cn/117925-technote-csc-00.html 有 2 种不同类型的 cookie&#xff1a;会话 cookie 和持久性 cookie 简介 本文将介绍什么是 HTTP cookie&#xff0c;以及会话 cookie …

数据持久化

数据持久化 企业数据架构存储技术存储架构 企业数据架构 持久化&#xff08;Persistence&#xff09;&#xff0c;即把数据&#xff08;如内存中的对象&#xff09;保存到可永久保存的存储设备中&#xff0c;如磁盘等。 数据按存储类型可以分为缓存数据库、关系型数据库、NoSQ…

事务四大特征:原子性,一致性,隔离性和持久性。

事务四大特征&#xff1a;原子性&#xff0c;一致性&#xff0c;隔离性和持久性。 1、原子性&#xff08;Atomicity&#xff09; 一个原子事务要么完整执行&#xff0c;要么干脆不执行。这意味着&#xff0c;工作单元中的每项任务都必须正确执行。如果有任一任务执行失败&…

MySQL事务原子性、一致性和持久性以及回滚是如何实现的?

前言 《MySQL事务详解》一文中详细讲解了事务的概念&#xff0c;包括ACID特性&#xff0c;事务并发引起的问题&#xff0c;事务的四种隔离级别。 在事务的四种特性中&#xff0c;原子性、一致性、持久性通过数据库的redo log和undo log来完成&#xff0c;redo log称为重做日志&…

InnoDB引擎--事务持久性

事务是指构成单一逻辑工作单元的操作的集合。数据库系统维护事务的ACID四个特性: 原子性:事务的所有操作在数据库中要么全部反映,要么全部不反映。一致性:事务执行前后数据库保持约束一致性和业务逻辑一致性。隔离性:在事务并发执行时,各个事务都感觉不到其他事务的存在。…

MySQL 是如何保证一致性、原子性和持久性的!

编辑&#xff1a;业余草 来源&#xff1a;https://www.xttblog.com/?p4891 今天&#xff0c;我们来简单的看一下 MySQL 的一致性、原子性和持久性问题。后面还扩展了 15 个简单的面试题&#xff0c;希望大家喜欢&#xff01; 1、Mysql怎么保证一致性的&#xff1f; OK&#xf…