
性能测试
文章平均质量分 84
软件测试凡哥
测试八年,我秃了可我也变强了
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
下单接口调优实战,性能提高10倍
这个是下单接口的逻辑不能大改的情况下的优化方案,一般来说,库存操作应该是单独的服务,可以单独优化的。而单纯的下单逻辑也是可以优化的。以下是我收集到的比较好的学习教程资源,虽然不是什么很值钱的东西,如果你刚好需要,可以评论区,留言【777】直接拿走就好了各位想获取资料的朋友请,三连!三连之后我会在评论区挨个私信发给你们~原创 2023-08-15 19:22:45 · 424 阅读 · 0 评论 -
测试架构师如何落地性能测试方案(一)
最近刚接手一个新项目,在最开始的时候要求对这个项目做性能测试,产品经理也给不出性能需求,只因为这个项目是电商项目,可能会有高并发,秒杀的场景,所以产品经理要求我们对这个项目必须做性能测试,又因为这个项目是一个新项目,所以大家都没有重视起来过了一段时间,当领导问到这个项目的性能测试方案如何落地的时候,大家都懵了,都不知道该怎么办。然后测试组长就把目光投向了我-----整个测试团队唯一的测试架构师,在这个时候,我就想起了还有研发架构师,于是我就找到了研发架构师,一起沟通这个项目的性能需求!!!原创 2023-08-14 17:09:38 · 331 阅读 · 0 评论 -
浅谈常态化压测
1.什么是常态化压测常态是指:“正常的状态”;“化”在这里是表示转变为某种性质或状态。“常态化”的含义就是:趋向正常的状态。那么常态化压测顾名思义就可以解释为,让压测趋于正常的状态,趋于合理;因此通过调研给了如下定义:常态化压测是指在某个产品或系统上进行自定义周期(常态化)的、系统自动执行的、可验证结果的压测过程。目的是检测产品或系统的稳定性、可靠性和性能,确保它们能够在不同的场景下正常运行。原创 2023-08-09 15:35:59 · 308 阅读 · 0 评论 -
MySQL 慢查询探究分析
性能测试过程中,数据库往往是造成性能瓶颈之一,而数据库瓶颈中sql 语句又是值得探究分析的一环,其中慢查询是重点优化对象,在MySQL中,慢查询是指查询执行时间较长或者消耗较多资源的查询语句。具体来说,MySQL中可以通过设置一个阈值来定义慢查询,通常默认情况下是超过2秒钟的查询会被认为是慢查询,但是这个阈值可以根据具体情况进行调整。原创 2023-08-08 16:41:01 · 545 阅读 · 0 评论 -
pytest-xdist分布式测试原理浅析
pytest-xdist执行流程:解析命令行参数:pytest-xdist 会解析命令行参数,获取用户指定的分发模式、进程数、主机列表等信息。加载测试用例:pytest-xdist 会加载所有的 pytest 测试用例,包括在当前目录和子目录下的所有测试文件和测试函数。原创 2023-08-08 16:37:33 · 1611 阅读 · 0 评论 -
metersphere性能压测执行过程
(1) 首先在controller层,通过RunTestPlanRequest接收请求参数原创 2023-08-08 16:27:28 · 647 阅读 · 1 评论 -
性能测试监控指标及分析调优指南
哪些因素会成为系统的瓶颈CPU:如果存在大量的计算,他们会长时间不间断的占用CPU资源,导致其他资源无法争夺到CPU而响应缓慢,从而带来系统性能问题,例如频繁的FullGC,以及多线程造成的上下文频繁的切换,都会导致CPU繁忙,一般情况下CPU使用率原创 2023-08-07 16:32:56 · 590 阅读 · 0 评论 -
【2】-第一个Locust脚本
说明locust-webUI已经启动,点击http://0.0.0.0:8089(或者手动在浏览器中输入,Windows可能需要输入localhost:8089来访问)打开web-UI界面。在ide中创建我们的loucst项目,并创建第一个测试脚本,代码如下。点击开始按钮,并发程序就开始运作了,结果如图。之后我会在评论区挨个私信发给你们~我们运行这个脚本,控制台输出。界面显示的属性分别是。原创 2023-07-28 15:41:46 · 191 阅读 · 0 评论 -
【1】-Locust性能测试工具介绍与安装
locust是一个开源的压测工具,其官网地址是,通过编写Python代码,可以轻松实现百万级的并发,相对于我们熟悉的Jmeter来说,其对压测机的要求更低,而且使用locust和Python协程可以在一个User中实现多个api同时请求,更真实地模拟用户在前端页面操作时发起请求的场景(Jmeter同一个线程池中多个HTTP取样器不能同时发起,有先后次序等待关系),这也是本人想要学习并使用Locust的直接原因,并且由于locust脚本是纯代码编写,所以使用起来更加地灵活,但是。原创 2023-07-28 15:39:33 · 328 阅读 · 0 评论 -
【4】-多个User执行测试
两个User定义了host,运行时就可以不填host定义了weight,和上一节task设置到权重一样,运行时user分配比重按照3:1执行原创 2023-07-28 15:44:25 · 239 阅读 · 0 评论 -
性能如何通过分析后台资源确定瓶颈之CPU内存
处理时间的阈值(正常范围),对于CPU利用率,每个公司要求不一,一般平均不超过90%是正常,如果其平均值持续超过90%,则怀疑是处理器CPU瓶颈,表示此测试的负载对于目前的硬件过于沉重。在长时间的性能测试中,如果用户数一直不变,CPU使用率一直平稳,可用内存在逐步减少,考虑是否发生内存泄漏。在长时间的性能测试中,如果用户数一直不变,CPU使用率一直平稳,可用内存在逐步减少,如果发生的内存泄漏,第一条线是虚拟用户,第二条线是CPU,当虚拟用户不再增加, CPU使用率还在持续增减,存在问题。原创 2023-07-27 14:33:38 · 413 阅读 · 0 评论 -
性能测试常见故障和解决思路
从常见的应用服务器来说,比如Tomcat,如果堆内存设置比较小,就会造成新生代的Eden区频繁的进行Young GC,老年代的Full GC也回收较频繁,那么对TPS也是有一定影响的,因为垃圾回收时通常会暂停所有线程的工作。高并发情况下,如果请求数据需要写入数据库,且需要写入多个表的时候,如果数据库的最大连接数不够,或者写入数据的SQL没有索引没有绑定变量,抑或没有主从分离、读写分离等,就会导致数据库事务处理过慢,影响到TPS。最大连接数太少,造成请求等待。修改JVM参数,将Xss参数改大,增加栈内存。原创 2023-07-24 17:17:41 · 1111 阅读 · 1 评论 -
【性能】JDK和Jmeter的安装与配置
官网下载地址:http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase7-521261.html选择对应系统的安装包,下载后安装,安装中记录JDK安装的地址,之后一直点击下一步到完成就可以。原创 2023-07-14 19:13:20 · 3071 阅读 · 5 评论 -
系统吞吐量(TPS)、用户并发量、性能测试概念和公式
一个系统的吞度量(承压能力)与request对CPU的消耗、外部接口、IO等等紧密关联。单个reqeust 对CPU消耗越高,外部系统接口、IO影响速度越慢,系统吞吐能力越低,反之越高。系统吞吐量几个重要参数:QPS(TPS)、并发数、响应时间每秒查询数每秒事务数每秒HTTP请求数系统同时处理的request/事务数一般取平均响应时间(很多人经常会把并发数和TPS理解混淆)理解了上面三个要素的意义之后,就能推算出它们之间的关系:QPS(TPS)= 并发数/平均响应时间。原创 2023-07-09 15:49:38 · 3791 阅读 · 0 评论 -
性能测试——压力测试指标
先说结论一般推荐,如果你:没啥人用的服务 tps 20,返回有300ms就行了十万到百万级的服务,响应能达到tps50 /200ms就可以了后台服务,能达到tps 20 / 200ms即可(通常后台同时使用也没多少人)秒杀类的短时间高并发……TPS100或200 在 100ms内响应 应该也能撑一段时间(具体情况还是要看业务量)背景做项目开发的时候,不止一次被性能测试问“这个服务性能要求是多少?原创 2023-07-07 19:32:53 · 5301 阅读 · 0 评论 -
性能测试基础知识及性能指标
性能决定了一个系统支撑其业务的能力。可以描述为系统稳定运行,高并发访问服务不会出现宕机,用户访问页面需要的时间,系统能够支撑多少用户并发访问。也可以描述为对资源的消耗。报告cpu,磁盘,内存,IO,网络等。普通用户关心的是响应时间和稳定性⚫ 页面还要多久才能加载出来?⚫ 页面怎么又报502 了?开发关心的是架构和代码的性能⚫ 应用架构是否合理?⚫ 技术架构是否合理?⚫ 数据架构是否合理?⚫ 部署架构是否合理?⚫ 代码是否存在性能问题?⚫ Jvm 内存分配是否合理?原创 2023-07-04 19:34:44 · 400 阅读 · 0 评论 -
locust学习教程(9)- event 事件
这里主要是 event hooks 的示例,用于各种测试监听,测试前置、后置、每个任务请求后的处理等等。"""解析locustfile,比其他任何事情都要早:return:""""""定义了失败率判断的函数,主要用于 @events.init.add_listener 进行监听:return:"""return"""监控测试的失败率并在超过某个阈值时(0.2)停止运行:return:""""""原创 2023-06-25 15:06:16 · 491 阅读 · 0 评论 -
locust学习教程(8) - event 事件
这里主要是 event hooks 的示例,用于各种测试监听,测试前置、后置、每个任务请求后的处理等等。"""解析locustfile,比其他任何事情都要早:return:""""""定义了失败率判断的函数,主要用于 @events.init.add_listener 进行监听:return:"""return"""监控测试的失败率并在超过某个阈值时(0.2)停止运行:return:""""""原创 2023-06-21 16:01:59 · 669 阅读 · 0 评论 -
locust学习教程(7) - docker运行单个locust脚本
命令注释:-p 8089:8089 >>> 将docker的8089映射到本地的8089(这样你在本地http://localhost:8089/可以打开监控界面)-v /d/GisLocust/locustfiles:/mnt/locust >>> 将本地文件挂载到docker上,实现docker的/mnt/locust共享D盘目录/GisLocust/locustfiles里面的所有文件locustio/locust -f /mnt/locust/locust_demo.py >>> 用镜像原创 2023-06-21 15:58:45 · 569 阅读 · 0 评论 -
locust学习教程(6)- 使用更快的http客户端:FastHttpUser
Locust 的默认 HTTP 客户端使用的是 python-requests 库。所以,自己电脑12个节点全开的情况下, (1)12节点全开,电脑CPU不过载,9000并发以下的时候使用httpuser (2)12节点全开,电脑CPU过载了,9000并发以上了,考虑使用FastHttpUsers (3)12节点全开,电脑CPU过载了,并发超过6万了,拓展节点机器继续分布式压测,比如这里同事电脑的CPU总共12核,就可以开启12个节点,最大化利用CPU资源,增加电脑发给服务器的每秒的请求数。原创 2023-06-21 15:55:32 · 754 阅读 · 0 评论 -
locust学习教程(5) - 分布式执行
一句话总结:在自己电脑上分布式执行、在同事电脑上分布式执行、在docker中分布式执行。原创 2023-06-21 15:53:09 · 941 阅读 · 1 评论 -
locust学习教程(4) - 命令行参数
Locust 统计的默认配置在 stats.py 文件的常量中设置。它可以通过覆盖这些值来调整到特定的要求。它可以直接在 Locust 文件中完成,也可以提取到单独的文件中,供所有 Locust 文件共同使用。原创 2023-06-20 16:11:15 · 981 阅读 · 0 评论 -
locust学习教程(3)- 编写locust脚本
在这里locust 文件只是一个普通的 Python 模块,它可以从其他文件或包中导入代码。在这里,我们为将要模拟的用户定义了一个类。它继承自 HttpUser,为每个用户提供一个client属性,HttpUser继承了HttpSession,client属性可用于发出 HTTP 请求。当测试开始时,locust 会为模拟的每个用户创建一个这个类的实例,每个用户都将开始在他们自己的gevent 线程中运行。HttpSession继承了request.session,HttpSession 增加的主要是将请原创 2023-06-20 16:11:22 · 1915 阅读 · 4 评论 -
locust学习教程(2)- 性能测试虚拟环境配置
这个解释器可以是你本地的安装的python,也可以是虚拟环境的python解释器。那么,虚拟环境的解释器哪里来?原理:复制你本地的python在当前项目下新建 venv 目录,目录里面是复制的你本地安装的python。后续你在setting中安装的包都会存放在这个venv目录。原创 2023-06-20 16:08:07 · 761 阅读 · 1 评论 -
locust学习教程(1)- 概念相关
Locust 是一种易于使用、可编写脚本、可扩展性能测试工具。基于requests库封装的性能工具,你可以随便自定义自己想要的功能,而不是局限于 UI ,搞性能就是用python,python能实现的都可以给它加上去,真的是无限扩展。这样的好处是:原创 2023-06-20 16:08:47 · 752 阅读 · 0 评论 -
全链路压测演进之迭代式压测
(1)业务团队的QA人员需要具备一定的性能测试技能,学会识别项目需求中是否存在隐藏的性能风险(2)以项目需求作为压测单位,可能不会覆盖到服务所有功能,但在日常迭代过程,迭代式压测相对会比较频繁,以点到面的切入条件,被压测的功能也会逐步积少成多(3)稀释大促全链路压测和常态化压测准备及计划的压力,融入需求生命周期管理,轻量分布式的完成压测资产沉淀些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!原创 2023-06-16 16:24:47 · 212 阅读 · 0 评论 -
如何进行App性能测试?SoloPi是最佳选择!
大家好!我是凡哥。今天我想跟你们分享一下如何进行App性能测试,同时介绍一个非常好用的工具——SoloPi。我们都知道,在如今这个数字化时代,移动应用程序已经成为人们生活和工作中不可或缺的一部分。而App性能测试就是为了确保这些应用程序在各种条件下都能够正常运行,并提供出色的用户体验。然而,很多人并不知道如何进行有效的App性能测试,更不知道该使用哪种工具。因此,这篇文章将为你详细介绍SoloPi工具的使用方法和测试技巧,帮助你更加轻松地进行App性能测试。原创 2023-06-12 17:18:13 · 2874 阅读 · 0 评论 -
如何进行App性能测试?iTest工具助力你轻松实现!
如何使用iTest工具进行App性能测试。在如今这个高度竞争的移动应用市场中,用户对于应用程序的体验需求越来越高,而良好的性能表现则是实现这一目标的关键。因此,App性能测试已经成为了开发人员必备的技能之一。然而,很多人并不知道该选择哪种测试工具,以及如何进行有效的测试。这篇引流文章将为你介绍iTest工具的基本功能、使用方法和测试技巧,帮助你更加轻松地进行App性能测试,从而提高应用程序的质量和性能。读完这篇文章,你也可以成为一名顶尖的应用程序测试专家!原创 2023-06-12 17:22:21 · 2127 阅读 · 1 评论 -
如何进行JMeter分布式压测?一个案例教你详细解读!
当前快速发展的互联网应用领域,高效的性能测试已经成为了确保在线应用质量和用户满意度的重要手段之一。而JMeter分布式压测则是实现这一目标的最佳选择。然而,很多人并不知道如何使用JMeter进行分布式压测,更不知道如何获取准确的测试结果。这篇引流文章将会向你介绍JMeter分布式压测的基本概念、工具和操作步骤,帮助你更加轻松地进行高效的性能测试。还等什么?赶紧跟着我们的案例来学习吧!原创 2023-06-12 17:30:03 · 3518 阅读 · 0 评论 -
压测软件Jmeter使用实例(WIN7环境)Jmeter安装配置Sampler监听器(Listener)点击启动按钮,开启测试Jmeter自定义变量Redis的压测
对于初学者来说,学习jmeter可能需要一些时间来适应和了解它的使用方法。在我的测试工作中,我也曾经遇到过这个问题,但是通过耐心地学习和实践,我现在已经可以轻松运用Jmeter进行性能测试了。接下来,我将分享我的经验,帮助你在WIN7环境下正确安装配置Jmeter,并且使用Sampler监听器(Listener)开启测试,最后还将介绍如何使用自定义变量Redis进行压力测试。话不多说,开始我们今天的jmeter学习之路吧!原创 2023-06-11 19:12:42 · 748 阅读 · 0 评论 -
Jmeter快速入门
对于初学者来说,可能会觉得jmeter有些难入手。不过,别担心!在我开始使用Jmeter之前,也曾面临着同样的问题。但是,通过一番尝试和学习,我现在可以自如地运用Jmeter进行性能测试了。接下来,我将与你分享我的经验,帮助你快速入门,并成功地使用Jmeter进行接口测试和性能测试。原创 2023-06-11 15:29:29 · 592 阅读 · 0 评论 -
JMeter测试笔记(三):基本组件的使用
关于JMeter的测试笔记,这是第三篇,主要是介绍JMeter的基本组件的使用。在进行性能测试时,了解并掌握基本组件的使用非常重要,因为它们是构成JMeter测试计划的基础。在本文中,我们将深入了解JMeter中的各个组件,包括线程组、HTTP请求、断言等,并学习如何正确使用它们来创建一个有效的测试计划。如果你还没有掌握JMeter的基本组件使用方法,那么这篇文章一定会为你提供很多有用的信息和知识,帮助你更好地使用这个强大的测试工具。原创 2023-06-09 16:42:42 · 299 阅读 · 0 评论 -
JMeter 测试笔记(二):组件及运行原理
X1~X5是负载模拟的整个过程,Y1是负载模拟部分,这部分主要负责模拟用户请求;Y2是断言,主要负责判断结果的正确性;Z主要负责收集结果的收集,进行结果的处理。JMeter的基本原理是建立一个线程池,多线程运行取样器产生大量负载,在运行的过程中,通过断言来验证结果的正确性,通过监听器来收集测试结果。原创 2023-06-09 16:38:45 · 407 阅读 · 0 评论 -
JMeter 测试笔记(一):认识JMeter
在现代互联网时代,应用程序的性能已经成为了一个非常重要的问题,并且对于许多公司的生存和发展都起着至关重要的作用。而JMeter作为一个免费且开源的性能测试工具,可以帮助我们进行各种类型的性能测试,如接口测试、负载测试等等。如果你还没有掌握JMeter的使用方法,那么这篇文章一定会为你提供很多有用的信息和知识,帮助你更好地理解和认识JMeter这个神奇的测试工具。原创 2023-06-09 16:33:47 · 414 阅读 · 0 评论 -
Jmeter Suite安装中influx一直处于pending状态
今天要和大家聊聊一个关于Jmeter Suite安装的问题——“influx一直处于pending状态”。作为一名老测试,我们在使用Jmeter进行性能测试时,经常需要用到influx来存储和展示结果。但有时候我们会发现,在安装过程中,influx却一直处于pending状态,让人很是苦恼。这种情况下,我们不要慌张,也不要放弃,因为解决问题的方法总是存在的。在这篇文章中,我将和大家分享我在解决这个问题时所遇到的困难和经验,并提供一些实用的解决方案,希望能对你们有所帮助。原创 2023-06-08 21:35:59 · 325 阅读 · 0 评论 -
长短连接对压测的影响有多大?!
当我们进行压力测试时,长短连接是一个非常重要的参数。但是,你知道吗?长短连接对于压测结果有着非常大的影响!如果你不理解这个参数,那么你的压测结果可能会出现严重的偏差。在这篇文章中,我将带领大家一起来探讨长短连接在压测中的影响,并且分享一些最佳实践,助你轻松完成高质量的压测任务。本文绝对值得一读,相信它会给你的压测工作带来很多帮助!原创 2023-06-07 16:25:17 · 1141 阅读 · 0 评论 -
AB压测工具的介绍及安装
今天我要和大家聊聊AB压测工具,如果你对网站性能测试感兴趣或有需要,那么这篇文章一定会帮到你。我曾经也因为缺少良好的压力测试工具而苦恼,直到我发现了AB压测工具。它可以帮助我们测试网站在高并发情况下的性能表现,让我们更好地了解网站的性能瓶颈和优化方向。接下来,我将为大家介绍AB压测工具的安装和使用方法,希望能够帮助大家更好地进行网站性能测试,提升网站的质量和用户体验。原创 2023-06-06 19:34:06 · 2186 阅读 · 0 评论 -
压力测试遭遇大量TIME_WITE之后(这样解决)
某天,在对一个提供http接口的后台服务进行压力测试过程中,我们设定了几百qps(每秒请求数)开始测试几分钟后,请求一端(我们后续简称为:客户端)的压力结果统计日志中开始连续出现大量的报错信息:原创 2023-06-05 15:06:13 · 1018 阅读 · 0 评论 -
驱动页面性能优化的3个有效策略
测试通过发现、分析、验证三板斧,驱动推进页面性能优化快速有效,在业务方或其他同学提过来之前,我们都已经发现并有了分析,在优化节奏上更具有主动性。原创 2023-05-24 15:06:14 · 435 阅读 · 0 评论 -
LoadRunner 安装指南:详解安装步骤和常见问题解决方法
作为一款领先的性能测试工具,LoadRunner 被广泛应用于各种企业级应用程序和系统的性能测试中。然而,对于初学者来说,正确安装 LoadRunner 并不是一件容易的事情。在安装过程中可能会遇到各种问题,例如缺少必要的软件、错误的配置选项等等。本文将为您提供详细的 LoadRunner 安装指南,从下载安装包到启动 LoadRunner 运行第一个脚本,为您全面介绍每一个安装步骤。我们还将针对常见的安装问题进行解答,帮助你快速排除问题,让你轻松上手使用这个强大的工具。让我们一起来看看吧!原创 2023-05-02 14:28:49 · 8738 阅读 · 22 评论