性能测试最怕的就是明明做了,但是又没发现什么问题,或者说在测试的时候没问题,上线之后就发现一堆的性能问题, 所以针对于性能测试的话,我们要有一个非常规范的性能测试思路,才能够说确保真正的性能无忧。那么什么叫做规范的性能思路呢?第一个就是比如说需求梳理,我们需要具备有这个非常清晰的性能需求梳理的思路逻辑,同时的话在需求梳理明确之后,我们需要去采用合适的工具, 如果说你用的是 g meter 的 话,那么 g meter 一定要使用分布式压测的这个机制,这样的话你才能够说真正的 达到你想要的这个压测规模。那在使用的过程中呢,尤其要注意在 g meter 里面,这个多线成压测你稍用的不好,就可能会导致你这个压测 没有完全没有按照你的一个实际思路来,或者说你的压测结果是不符合我们真正一个需求的。所以针对这一块的话,我把这几个内容我单独整理出来,需要的可以找我领取,我觉得应该能够清晰的解答你的一些疑惑。最后感谢兄弟们支持一下。
粉丝195获赞1267

我们这节呢将吉米特性能压测基础的第二节创建这种县城主,这种县城主是一个什么样的一个东西呢?他呢在吉米特里面 模拟人的点击这个点击这个现成主呢,那里面肯定有很多这种现成来模拟每一个人对当前的 并发了一网站来进行访问啊,这时候呢就需要创建这种县城主,一个县城主里面可以创建很多这种县城的,那么呢我们现在啊通过操作来看一下这种县城主啊如何来进行使用的, 我们现在呢吉米特呢下载呢非常简单,在当前吉米特阿帕奇 这个官方网站啊来进行下载,下载呢点击当前的这个当漏的当漏的瑞丽丝,我们点进去看一下 比利时,这里面有很多版本啊,我们当前呢我们当前演示呢,我们当前采用的是最新版本五点三,吉米特五点三的, ok, 我现在呢当前已经把它下载下来了,我们现在开始来进行启动 jimeter, ok, 这个就是当前解压的目录,这个启动呢要找到当前的一个闭目录, 这个闭目录里面呢启动呢他支持的环境有很多,有另一个方向有 window, window 操作系统环境下的,我们当年呢采用这种 jimeter 在 window 点吧台的环境下的,我们点击 ok, 现在正是一个启动的过程,然后这边就显示一个图标, ok, 现在呢就启动成功了。 那么呢我们现在呢首先第一步这里面啊有很多这种操作的,我们后续啊我们会一点点来进行讲解。我们首先呢点击当前次次激发我们建一个当前的县城主, ok, 这个当前就是一个县城主,这个县城主呢理解呢也非常简单,他包含的内容啊也非常简单,这边呢就是一个备注和名称,他没有实质的一些意义。然后后续呢这里面呢 取氧气错误后要执行的一个动作,这个动作呢有很多,这么呢可以根据当前的一个业务场景啊,如果是在测试过程中,比如当年并发测试十个,如果是有一个 发生的错误,是继续还是直接停止线折或者是停止测试等一系列的这种操作的,这样理解也非常简单的, ok, 下面呢就是一个比较比较重要的,他的一个现成的一个属性,现在属性呢就表达当前啊 这个现成数啊,比如当前设置是一百个,一百个过程中呢,他呢在启动这个现成中啊,他会发成会发送一百个现成啊,来模拟当前的 htb 的一个请求, 这个时间呢他代表,比如当前有一百个模拟一百个这种现成需要在,比如当前设置的是十秒,十秒过程中呢,在十秒过程中呢把当前一百个现成啊,要把它发送完毕。 这下面呢循环次数呢,这个就比较简单了,比如我们当前设置的一组当前呢一百个现成,循环一次, ok 就结束了。如果现如果是设置是十,那么呢他会连续循环十次,每次呢就是一百个 这个,那么点击永远的数,这时候呢他就一直来进行发送当前的这种设置的这种现成数。然后这边呢就是比较简单,就是设置他 sam c m, 就是在循环过程中啊, 当前的发送请求的一个迭代性,关于这个下面的这个迭代器啊,这个迭代像,像对于我们那个定时器一样,这个调调度器,这个调度器呢?当前这个次序时间和启动时间,当前启动时间还是有用的, 也就是在老版本嘛,它里面呢还有一个开始时间和结束时间,也就在新版本这个就把这个 次序,这个开始时间结束时间就去掉了,然后这个次序时间也没有什么多大意义了,但是这个启动时间延迟时间他还是有效的,比如当年设置是五秒,启动时间是五秒, 这时候呢,我们当前启动这个县城主任来做并发的时候啊,他在五秒之后才开始来进行执行当下的一个县城的一个 模拟现成的一个并发过程。 ok, ok, 那么我们现在开始来进行创建, 这个呢,当前只是一个县城主,我们需要模拟一个简单的一个 htdp 请求,这个 htdp, 行呢,我们后续啊来再再进行性讲解。我们当年呢比较简单就采用 htdp, 然后呢端口呢,我们就采用本地的 logo, house 的 单口呢是八零八幺,然后采用 get, get 呢,我们当年是创建一个微服务的,这种微服务呢,我们当前这个连接地址啊也准备好了, 我们来模拟不断的发送这种,哈喽,这个字符串, ok, 这个 htv 请求就已经创建好了, ok, 我们保存一下,保存一下呢,我们就叫这个名称吧, 我们微量能够看清楚,我们再加一个,加一个监视器,我们看他的有没有成功啊,方便我们来进行观察。 ok, 我们重点是讲这种现成组的这个下面的后续的来再进行讲解。 那么接下来我们先创建十个,然后呢接下来我们这个就创建零,然后执行呢这个调度器呢,我们先后续再讲, 我们先讲这种, ok, 那么呢我们现在开始,当年已经定义好了,这个怎么理解呢啊?当年已经设置了十个县城,然后这个也就是这个设置为零的时候啊, 这个过程呢就是他一次性把这个十个现成啊,一次性并发的发送十个现成到服务器端,就没有当前的一个停留时间了。 ok, 那么呢我们当前的这个服务啊也已经打开了, 那么呢我们现在开始来进行启动, ok, 现在已经一下子发送三十十个请求,我们看一下这中端,当前中端已经结束到当前十个了。 ok, 这个就是现成主控制的,如果我们定义一百个,他能就是一次性啊发送一百个 请求到我们的当前的服务端,我们看一下, ok, 他一次性就把这个一大堆这种请求啊发送到我们这个当前的这种服模拟服务的应用端,这是现在很多,我们现在啊把它清掉,然模拟下一个参数, 因为现在请求一下子太多了,我们需要加一点停留时间,比如当前是在十秒钟把当前一百个请求啊,把它发送完,同样的这种循环次数啊,仍然循环一次让他结束。那么呢我们来看一下,这是当前的一个效果。 ok, 现在已经开始进行请求了,这种请求呢也是比较快的,我们当前呢正在模拟十四, ok, 现在还在发,也就在十秒钟 发送完成, ok, 现在已经发送完成了, 也有理解这种停留这种时间啊,他呢是怎么做呢?我们当前是一一百秒,然后当前呢是十,设置的是十秒,这时候呢他就是这相处一下,然后接下来他就是比如 就一秒钟发送十个请求了,这呢就可以采用这种公司啊来进行计算,但也想一次性把它发送完,这时候呢我们就可以把它设置零,如果想停留时间长一点呢,他也可以根据这种设置 就 ok 了,然后这个呢就是设计设置他的一个主硕的,如果我们设置永远的时候,我们看一下效果, ok, 这里面呢不断的来进行发送,我们看我们的中段,我们把它清一下, ok, 不断的来进行发送, ok, 这种压力,这种参数啊也是非常简单的,我们把它停止一下, 比如我们当前呢不需要永远,我们当前测试十组,测试十组,我们当前把当前清掉,十组就是一,就是一百,总共是一百条记录。 ok, 我们那我们继续再来进行发送,我们这边呢石柱已经发完了,因为我们停留时间是比较短的,他这个发送的速度是非常快 坏的, ok, 这个呢就是一个线程组,这个比较简单,那么呢我们来做一下,看一下这种调度器,这种调度器呢我们主要是来观察这种启动的时间,比如我们当前设置十组,每一组呢同时呢 中间呢会延迟十秒,同时呢我们启动的时候在五秒之后啊再让他发送,我们看一下效果,我们把当前都清掉, ok, 我们再继续来进行观察。哎,报错了, 报错了,报错水,我们这个设置是有问题的,我们次余时间这个边呢改成个七岁, 随便写一个吧,我们再看一下效果。 ok, 现在已经启动了,这呢他会停留五秒钟。 ok, 这里呢已经出来了,我们这个后端呢,后端呢也逐渐的接收到当前的一个数据了。 ok, 这节呢主要是讲杰米特这种现成组的,现成组呢,他是模拟当前并发,这种并发到底并发多少个现成数啊? 他呢通过当前这个县城主来进行定义,县城主,那个下面的呢就可以定义他具体的一个请求,然后一个结果的一个监测。这呢这个过程呢是比较简单的,大家按照这种方式来进行练习啊,就可以很容易的掌握了。 ok, 这节呢就讲到这里,谢谢。

gmaiter 压力测试实弹步骤压力测试啊,又要强度测试高压力看系统的如何崩溃准备预案。压力测试呢,是在强负债啊,比如像大数据量大病发的用户的情况下来测试查看一下应用系统在峰值使用情况下的操作行为,从而有效的就发现系统的某项功能隐患, 系统是否具有良好的容错和可恢复能力。压力测试呢,分为高负载下的长时间的稳定性测试,压力已经的极限负载情况导致系统崩溃的破坏性压力测试。今天呢,我们就来看看用吉迈特做压力测试的步骤吧。资料呢,放在视频后方了,记得点赞收藏!

性能测试最怕的就是测试的时候测半天啥问题都没发现,结果一上线就崩了,用户投诉不断,领导还追责,真的白忙活一场, 是不是都踩过这坑?所以针对于性能测试,要有一个非常规范的性能测试思路,才能够确保真正的性能无忧。首先得把性能需求理清楚, 逻辑要明明白白,不然方向错了全白费。然后选对工具用法,用 g meter 的 话,一定要搞分布式压测,这样才能达到实际需要的压测规模,不然单机压测根本测不出真实性能。还有多县城压测这一块千万别瞎用,稍微配置不当,压测就偏离实际场景,结果完全不准, 等于白测。这些坑我之前全踩过,后来整理了一份 g m t。 规范压测手册,把需求梳理、分布式配置、多县城避坑这些点全拆透了。想要这份手册的评论区,扣 g m t 手册我直接发你,关注我,后面还会分享更多性能测试提效干货,帮你少踩坑!

性能测试过程中,如果明确的要求我们的系统每秒要能够支持一千的请求处理,那这种情况下面我们该如何去做性能测试呢?首先核心的一个方向的话,我把它分为四个大的步骤,第一呢就是目标很明确了,我们的处理吞吐量每秒要一千,那 这种情况下面我们在测试的时候,同时要去监控时间、响应时间、错误率,服务器的一些 cpu 内存、数据库的一些复杂的情况。 第二个呢就是我们要去设计这个场景,比如说通过 gmail 实现阶梯的加压,从每秒两百逐步加到每秒钟一千,这样的请求逐步的去对系统产生更大的压力,模拟我们的一个真实的风质情况, 同时观察我们系统是否有爆处啊,或者是一些异常信息。第三个呢就是收集我们的一个性能监控指标, 像在处理过程中,服务器的 cpu 内存等等,这些资源是否有出现飙升的情况,或者是一些异常占用,或者是资源占用不稳定等等这些情况,那这些呢就是我们需要去考虑的,如果说出现了一些明显的峰值,或者是 整个波动比较大,那这是我们系统不稳定的一种表现。讲到这里其实大家也明白了,就是现在是不仅仅说我要明确这个目标去压差,我还要去分析它, 除了这个之外的话,我们最终呢还去检查我们的数据正确性,因为最终这个系统他做过压缩之后,我们最终产生了数据,比如说我总共发现了多少请求,你像是订单创建,那我的定最终订单数据是否有问题,如果说有问题的话,那证明这个系统在病发的情况下面,他本身就有逻辑问题。尤其是你像我们那些秒杀场景, 是否出现数据的商品超卖,或者是商品的库存不对应啊,或者说出问题了等等这些数据情况,这都是我们做压缩的时候要去关注的。 再总结一下,就是找到明确的目标去模拟这个场景,同时分析我们服务端的资源占用情况。最后就是检查我们数据整体的一个情况,那这个过程的话就是我们做性能测试的时候来去关注的,同时当你发现性能问题之后,你还得去结合后端的开发人员来一起去做 系统的瓶颈定位,以及说后续的性能优化,包括后续性能优化之后的一个性能复测。好了今天就分享到这里,关注三方老师,后续咱们聊更多软件测试的精彩干货。

locust 作为 python 生态下的轻量性能压缩框架,是搞定接口与服务性能验证的实用工具,其学习与应用可围绕核心模块逐步落地实践。首先是工具对比与选型认知, locust 常与经典压缩工具 g m t 对 标。 locust 的 优势在于分布式、易扩展, python 脚本自定义性强,外部 u i 监控直观。而 g m t 则胜在图形化,界面友好,协议支持更丰富, 选型逻辑也很清晰,需要大规模分布式高自定义压测场景。选 locust 追求快速开箱,即用多协议覆盖选 gemeter。 其次是环境搭建的基础步骤, locust 部署门槛极低,准备好 python 三点九以上环境后,通过简单的命令安装并验证版本,即可快速完成环境配置。 接着是基础实操的全流程落地,准备好测试服务后,编辑脚本定义压测行为,启动压测并配置相关参数,即可通过界面实时查看核心性能指标,直观掌握服务表现。 最后是常用性能测试分类的脚本适配。 locust 可覆盖精准测试、载测试、压力测试、耐力测试等场景,只需调整脚本中的等待逻辑并发规则,就能适配不同的性能验证需求。 针对这些从选型到实操的全流程要点,这份文档把 locust 的 核心操作与场景应用拆解得清晰明了,能帮你快速从入门到实战落地。

今天呢跟大家来说一下使用洁面套里边的 gm es pas 啊,这个这种方法去做断盐啊,还有使用这种方法呢去做提取器啊,首先呢来看一下 gm es pas 他的官网的使用说明啊,当你去搜这个 gmes pax 啊这个路径的时候呢,可以看到啊,在这里边这个呢是他的一个官网。 嗯,洁面套里边呢,也支持这一种啊这种操作。那下边的话,就是我们可以在洁面套里边呢添加一个现成组,在现成组中添加一个 htvp 请求。 好,那下边呢,举一个例子,比如说在我们的测试社区上啊, ok, 这个页面 好,在我们的这个测试社区上呢,比如说啊,我们去访问主题首页,那主题首页里边呢,这里边返回很多的数据,那我怎么去提取这这个数据啊? 好,我们先把这个请求先创建好,盖的请求啊,特别简单,再添加一个查看结果数。 好,那么现在运行运行的时候呢,保存一下我们的文件,比如保存到桌面上。好,保存。 ok, 那么现在运行呢,可以看到服务器返返回的结果。好,那这个结果里边呢啊,当然你可以使用,比如说接着拍的台词里边,可以将这个格式去呃, 格式化成间等格式,那下边呢就是要教大家使用 gm es pax 这种方式去提取里边的数据。 ok, 那在这里边呢,他支持了很多这种语法,比如说我可以直接输入这个 k 的值,可以就说输入这个 k 可以直接拿到对应的 k 的值。 ok, 在洁面套里边呢,你也可以试一下在洁面套里边呢,选择在查看结果数中选择洁粉、 gm, es, pastet。 好,选中,选中之后呢,比如说我想看啊,我们可以看到这个数据呢,这是一个返回的结果, doutlele 里边呢?有很多数组。 ok, 我直接输一个 dottle 啊, 好,点击太色,那这边的话他会把这套里边的数据都给我们啊,就是说自动提取出来。 那现在我想看一下,比如说 dotle 里边的第一个啊,比如说第一个数据,第一个数据的 id, 那我可以写个 dot 啊, 直接加上套锁引,锁引的话就是使用中括号零好锁引,比如说锁引之后呢,我想看他的 id, 那就点 id。 好,我们可以看到直接这个就是 id 的啊, id 的值。好,那这是通过呃顺序去访问里边的数据啊,那这里边呢?都有,大家可以看一下,比如说就一层一层去取啊,他特别的方便。 那下边的话就是说呢,我也可以去取,比如说,呃,我想取前五个 id, 那前五个 id 的话呢?就是零冒号五, ok, 这是,这,这样的话我们可以匹配什么呀?匹配五个这样的一个 id 啊。好,那这边他支持这个切片操作,大家可以看到啊,这是他的一个官网啊,那当然你也可以指定他的范围。 ok, 好,那当然你也可以去布场,比如说我想取啊,每格两个取一个啊,或每个或倒着去取都可以,比如说我在这边我可以再加一个,比如说二 来我们可以看一下。好,那这边的话就是说你都会去取完第一个之后去取第三个,然后再去取第五个。哎,比如说他中间可以去进行这个条步啊。 ok, 那这边的话大家可以看到星星的话是表示所有,那你也可以去直接来一个,他有多少个你就匹配多少 啊,就是通过新这种方式。好,那这里是就是说他的一些基本的语法,那最重要的跟大家来说一下啊, 他这边还支持条件查询,那条件查询是什么意思呢?我们可以看到在返回的结果里边,比如说, 呃,这个数据是三,也就是说这个话题他的呃他的一个浏览量是三,那么下边这个当我们也可以把所有的浏览量给大家来显示出来,那就是比如说 miss。 好,那这边我们可以看到有三有零,对吧?啊?那现在我想,比如说我想去找一下什么?我想去,呃,看一下 啊,大于零的啊,浏览量大于零的 id 啊,浏览量大于零的 id, 那这边的话就有可能第一个,对吧?那比如说我在这边呢,我去啊,去这个去这个网站上啊,我在比如说我把这个浏览量呢? 我多刷新几次啊?好多刷新几次之后呢,可以看到他的浏览量会增加,那我比如说我再去发送这个请求。 ok, 我们可以同样使用这个表达式。哎,大家可以看到,那这个就是说第三个啊,第三个他的浏览量也是三次, 那所以说呢,如果我想去找什么呀?我想去找浏览量大于零的 id 啊,这个就像我们在数据库里边一样, 你去查找,比如说大于年龄大于二十岁的学生的姓名啊,其实跟这个是一样的。那我现在呢,我要去找什么呀? 浏览量大于三啊,或浏览量大于零的话题 id, 也就是说呢找他的什么呀?对应的 id, 那这边怎么去做呢?我们可以看一下,在 gm e s pax 里面呢,他支持这种 啊,就是说条件过滤啊,我们可以看一下,这边也有对应的例子,那这里呢,其实就是用一个问号,问号表示是一个条件,那后边是啊,就是说这个条件,比如说等等两个等等呢?是表示 啊,等于啊,等于。那这边的话,比如说我们去找这个 ctrl 等于 rendond 的什么呀?内蒙我们可以看到这边有 a 和 b, 对吧?啊?这两个,那他是返回结果。 ok, 那在这边的话我们也可以用这种方法,那我们就用什么呀?这边呢,我们是找这个 viccont, 那就是问号 viccont 等大于什么呀?大于零 好,大于零的什么呀? id 这边呢,来我们看一下啊,就是需要跟大家来说一下,比如说当里边有数字的时候呢,嗯,这边我们要给他加上一个反向的单引号,否则他这边他就匹配的时候会爆错。 好,反向的单引号,反向单引号,在键盘的。呃, esc 下边的那个键啊,注意不要,不要敲错了啊,他是这样的,好在英文输入法下啊, ok, 我们再去测试。哎,我们可以看到是 两个 id 啊,这个就是通过条件去过滤啊,通过条件去过滤,那当然了,在这边呢,我们也可以去 你使用啊,比如说也可以使用。呃,比如说我们去做这个上下游船舱,那上下游船舱的话,你可以在后置处理器里边的使用 gf, gm, espes 啊,这样的一个 提取器。 ok, 那他的表达式,表达式其实就是刚才,比如说我现在要把这个 id 呢拿出来,拿出来之后呢,我可以在这里边呢去。 ok, 这是他的一个路径表达,是直接复制过来就 ok 了,可以给他再起一个变量,比如说 id 啊 id, 那我们要匹配哪一个?比如说匹配第一个啊,第一个。好,那他匹配两个,我们可以去找一个,对吧?好,那这边比如说这个是画 题首页啊,这个接口。好,那我们再看在这里边呢,其实你做上下游传餐,这这个也是我们在企业里边经常去去碰到的问题, 那下边我再去做主题详情,主题详情的时候呢,需要有一个什么呀?需要有一个话题 id, 所以说在这里边呢,我需要把这个 id 值呢从上边提取出来,比如说你给他一个不存在,他就给你返回不存在,对吧?好,那我们把这里边呢再做一个接口, 第二个接口,好,添加一个 app 请求。 ok, 把它直接复制过来。好,那在这边呢,我就可以直接用上一个接口提取的这个什么呀?变量,比如说 id, 那就直接使用 id 这这种方式。好,那我们现在把这个查看结尾数拖到外边,再加上一个 调试取样器啊,我们第八个三炮。好,我们现在来运行清空执行。 好,可以看到第一个话题详情,现在把它转换成文本格式。 ok, 那看一下调试取样器,调试取样器的响应结果里边我们可以找到这个 id, 对吧? id 就是匹配到的这个 id 的值, 那我们在下一个接口中呢可以看到啊,这个 id 其实就是这个 c 二 d f 九啊,调试取元器里边 c 二 d f 九。好,那我们通过这种方式也就通过接诊 gm e f pas 这种方式呢?我可以 有条件的去查询,查询这个结果,从服务器返回的结果里边去进行过滤。那这样的话也可以就是说我们常说的啊接口里边上下游喘餐,或者是接口里边 上下游传餐的时候,如何去动态传餐啊?动态传单,那通过这个 gm es pax 啊这种提取器可以来实现, ok。

g meter 作为性能以及接口测试领域的压测利器,是测试从业者必备的核心工具,其学习路径可划分为四个核心阶段,首先是工具的安装部署与主界面认知搞定 jdk 依赖配置 g meter 的 下载安装流程, 掌握主界面核心组建的基础操作逻辑。其次, g meter 基础功能应用同步理解接口性能测试的核心概念与工作原理,比如各类协议请求的配置、 监听器的结果查看等基础操作。而高阶技能则聚焦于实战场景需求,比如局域变量的配置、多接口间的依赖关联处理、参数化与断源机制的灵活运用。最高阶的应用场景便是将 gmat 深度优化升级,升级为覆盖接口加性能的高效自动化测试解决方案, 比如设计多线城压测场景配置分布式压测生成可式化测试报告。针对这四个阶段的学习重点,这份文档包含了从入门到进阶的全流程干货,把 gmail 的 操作细节与实战技能都拆解的清晰明了。最后感谢兄弟们支持一下。

今天咱们说个软件测试超实用的工具, g meter 接口性能测试都能搞定,能省不少事。我把它分为四个核心步骤,首先是搞基础,得知到 g meter 是 干嘛的, 安装要先装加瓦环境下包解压启动,再熟悉主界面功能区,这是干活的底子。然后是基本操作,先明白接口是啥,再学会发 get post 请求。这俩会了基础,接口调试就上手了。常用场景也得会,比如用户定义变量,还有断言验证代码, 接口关联能提取登录托肯用在后续接口,数据驱动用 c s v 文件批量测,省重复活。最后是生成测试报告,准备好测试计划和数据,用命令行跑测试就能生成 windows 的 命令格式,也会讲清楚 针对这四个阶段的学习重点。这份文档包含了从入门到进阶的全流程干货,把这 meter 的 操作细节与实战技能都拆解的清晰明了,把这些核心内容摸透,测试效率能提一大截。

g m meter 作为软件测试、接口加性能测试双场景的核心工具,其学习路径可精准对应四个实操进阶阶段。首先是工具的安装部署与主界面认知, 搞定 g m meter 的 安装步骤,熟悉工作区,先把基础操作的逻辑框架磨透。其次是 g m meter 基础功能落地, 同步理解接口性能测试的核心原理,比如线程组的配置、 h t t p 请求组建的使用, 把怎么发请求怎么控并发这些基础技能练熟。高阶技能则聚焦实战场景刚需,像环境变量与参数化配置、多接口间的关联响应、断言的灵活适配, 这些都是解决实际测试问题的关键。而最高阶的应用是将 g meter 升级为高效的自动化测试方案,包括脚本的优化调优、分布式压测的搭建,以及定制化测试报告的生成,实现从能测到测好的跨越。 针对这四个阶段的学习重点,我已整理出一份贴合实操的 j m t 学习文档,覆盖从入门到进阶的全流程干货。