首页 > 其他分享 >性能测试知识科普(三)

性能测试知识科普(三)

时间:2022-10-07 16:14:17浏览次数:51  
标签:脚本 压测 性能 知识 企业级 测试 工具 科普

上一篇文章聊了性能测试中常见的测试策略以及如何选择合适的策略进行测试活动开展。

这篇文章是性能测试知识科普的第三篇,我想聊聊很多性能测试小白最关心也最核心的问题——压测工具。

 

普遍存在的问题

聊压测工具之前,先聊一下我面试候选人时问的问题以及在技术交流群经常遇到的一个情况。

面试候选人特别是性能测试岗位,我一般很少问测试工具的问题,大多问的是测试策略,针对特定场景如何设计压测方案以及如何定位排查性能瓶颈如何优化方面的问题。

但大多数候选人的第一反应是用什么工具,第一步怎么操作第二步怎么操作,如果你问这个工具的原理和特性,又回答的支支吾吾。

还有在一些技术交流群,很多同学会说自己遇到的问题,如不知道怎么用jmeter参数化,locust的压测结果图表怎么看,怎么写gatling的压测脚本等等。

并不是说觉得用工具low,而是遇到问题,我个人觉得首先应该分析问题,找到解决方法和策略,然后寻找合适的工具来辅助自己快速解决问题。

 

工具选型和推荐

聊完了对工具的认知后,接着聊聊如何选择合适的压测工具吧,这一段更适合性能测试新手或者小白,大佬请无视。

当然,我理解让新手掌握学习枯燥无味的概念和方法论有点强人所难,并不是所有人都有时间和耐心去学习这些知识的。

废话不多说,挑选了几个适合不同场景和不同阶段测试同学可以直接上手的工具,下面内容供参考:

工具名称

特性和脚本开发

适用场景

不足(对于新手)

Wrk

特性:体积小、安装便捷、纯命令行

脚本开发:脚本参考官方文档的demo

适用于新服务研发自测或粗略的性能评估

不适合日常压测

Locust

特性:体积小、安装便捷、可视化界面配置

脚本开发:简单脚本参考官方文档的demo或其他教程即可开始压测(需要写代码

满足日常压测和小团队使用

二次开发成本高

Jmeter

特性:体积小、安装便捷、支持拖拽、扩展组件多、可视化界面配置

脚本开发:简单脚本参考官方文档的demo或其他教程即可开始压测(大部分场景无需写代码

满足团队和企业级日常压测所需

企业级使用需要二次开发和包装

Gatling

特性:体积小、安装便捷、多协议支持、扩展性较好

脚本开发:简单脚本参考官方文档的demo或其他教程即可开始压测(需要写代码

满足团队和企业级日常压测所需

企业级使用需要二次开发和包装

Loadrunner

特性:体积巨大、安装繁琐、功能齐全、可视化界面配置

脚本开发:简单脚本参考官方文档的demo或其他教程即可开始压测(大部分场景无需写代码

满足团队和企业级日常压测所需

企业级使用要钱

 

软件测试而非测试工具

很多同学把压测工具当作了性能测试核心,忽略了需求分析、测试策略、定位问题和优化方面,这样其实有点舍本逐末。

软件测试只是整个交付环节里面的一部分,而软件研发交付本身是依赖于软件工程的方法论指导而实践出来的。

因此,我还是建议一些学性能测试或者做性能测试的同学,需求分析很重要,测试策略很重要,定位问题并找到合适的优化方案很重要,工具并没有那么重要。

工具只是在有解决方案的前提下,帮助你提高解决问题效率的辅助而已。

毕竟,做软件测试工作的是人,而非工具。人具有主观能动性和创造力,工具仅仅是辅助工具。

质量保障需要人去保障,工具只是辅助的提效工具。

 

标签:脚本,压测,性能,知识,企业级,测试,工具,科普
From: https://www.cnblogs.com/imyalost/p/16759916.html

相关文章

  • 关于git的知识
    gitadd提交到暂存区gitcommit将暂存区的提交到当前分支gitcheckout--test.txt撤销修改没提交暂存区:撤回和原来的一样提交到暂存区:修改后再撤销=》恢复提交后的......
  • C++模板基础知识
    源码编译环境:win10x86反汇编软件:IDAPro(胖大妈)第一次接触到模板是在C#的泛型编程,对其表面的理解是可以对一些约束范围内参数类型的方法进行重用,可以少写一些方法。在后......
  • 光学系统设计相关知识点[Part.1]
    光学系统有哪些特性参数和结构参数?结构参数:曲面顶点的曲率c,基准二次曲面系数K,高次非曲面系数a4,a6,a8,a12,曲面半径r,曲面间相对位置(顶点距离)d,曲面间介质对指定波长光线......
  • C#的基础知识
    大家好,欢迎大家跟我学c#的基础知识,不同的书籍学习内容都不一样,但是我总结了一个c#的基础知识,想巩固的请看下,有想学或者想复习的朋友可以找我一起学,有什么不会的也可以问我,......
  • 腾讯优图——分布式知识蒸馏损失改善人脸识别困难样本(附论文代码)
    计算机视觉研究院专栏作者:Edison_GECCV2020即将要开始,很多互联网络公司都有技术论文中标,腾讯优图就8篇入选,涵盖了目标跟踪、行人重识别、人脸识别等领域。今天我们详细分析......
  • 一些网络延迟测试工具
    主要整理一些工具,方便使用参考工具iperf比较老牌的,使用的用户比较多ethr微软基于golang开发的,新秀nuttcp基于了nttcp,原始来源是ttcpscamper一个比较强大的工具,集成了众多工......
  • orioledb 集成citus 测试
    前边制作了一个简单的orioledb集成citus的docker镜像​​dalongrong/orioledb:citus-11.0.5​​,以下是一个简单测试环境准备docker-compose文件version:'3'services:......
  • 驱动一些知识点
    驱动中引入分离的思想和总线设备模型,platform_bus_type结构体用来实现这种虚拟的机制。总线主要分为platform_driver(驱动)、platform_device(设备)两大类,这两大类下有各种各......
  • Python 冒泡排序,选择排序,归并排序, 希尔排序 算法 及测试
    使用代码实现冒泡排序,选择排序,归并排序,希尔排序4中算法完成下列任务。对1~100000序列打乱顺序,使用上述4种排序算法进行排序。每种算法排序重复100次排序过程中记录......
  • MySql基础知识总结
    Mysql基础知识总结一、Mysql的安装与卸载(Windows环境)二、Mysql的连接方式三、Mysql的基本常用语句四、Java连接Mysql技术Java连接Mysql的步骤在Java项目中写......