测试人的内卷,性能测试入门到实践该如何做?突破内卷...

news2024/11/14 19:25:40

目录:导读

    • 前言
    • 一、Python编程入门到精通
    • 二、接口自动化项目实战
    • 三、Web自动化项目实战
    • 四、App自动化项目实战
    • 五、一线大厂简历
    • 六、测试开发DevOps体系
    • 七、常用自动化测试工具
    • 八、JMeter性能测试
    • 九、总结(尾部小惊喜)


前言

性能测试如何入门?如何快速提升压测和性能优化相关的技能?

发现还是有很多同学迟迟无法入门,对性能测试的认知依然停留在使用工具压测然后统计数据出报告就完事的层次。

下面我们就来聊聊性能测试如何从入门到落地实践。

1、方法论

有句话叫做“工欲善其事,必先利其器”。
我想在后面补充一句:“欲利其器,必晓其理”!

无论任何一种知识或者技术领域,想要很好的在这个领域有所收获,一定要先掌握这个领域的理论知识,并且对相关的底层通用知识有所了解,否则在深入实践时会遇到很多认知上的偏差导致的结果南辕北辙。

基础理论知识不难学习,网上一搜很多基础理论知识的介绍,或者某些专业书籍上面都有很多关于理论知识的介绍。

学习理论知识不需要死记硬背,理论知识的作用在于让我们对性能测试有一个足够和全面的了解,知晓其脉络骨骼,然后按照方法论的指导,在具体的实践中灵活运用。

而通用的底层知识,对IT行业相关的技术从业者来说,无非就是网络协议、编码语言、数据库存储和操作系统相关知识。

这些知识基本是几十年前就有的,到现在没怎么变化,预计未来也不会有大的改变。

2、业务场景

技术本身没有直接的价值,它一定要通过业务目标的达成或者商业活动的变现,才能体现自己的价值。

我们所有的测试活动开展,也是基于具体业务场景,因此在掌握基础理论知识后,开展性能测试的前提一定是要对业务场景有足够深的理解。

3、工具组件

技术不断发展带来的最大的优势就是出现了多种类型的工具,而工具的作用就是辅助人提高做事情的效率,性能测试也不例外。

在实际的压测实施前后,借助工具可以事半功倍的完成性能测试工作。

下面列举几种供参考:
压测工具:jmeter、gatling、locust、ghz、perfdog、airlab、sysbench;
监控工具:zabbix、cat、skywalking、jaeger、prometheus、grafana;
分析工具:arthas、SystemTap、jconsole、visualvm、操作系统自带工具;
服务组件:常见的如redis、kafka、tomcat、feign、apollo、nacos、mybatis;
系统架构:性能测试的对象是各应用服务及技术组件,需要了解整个系统的调用关系,因此熟悉被测系统的系统架构和数据流是做好性能测试工作的必须项;

4、技术实践

其实性能测试只是一个统称,现在大家更习惯称之为容量测试或者容量保障。

性能测试本质是一个特别吃经验的活儿,需要大量的项目实践和踩坑排查问题,定位分析优化问题,才能累积丰富的技术经验和案例。

上面我列举了几个具有代表性的技术实践类型,其实本质都是为了保障线上服务的稳定性。

5、体系建设

性能测试或者说任何的技术实践,做到最后都是建立体系,体系是基于理论指导的适合自己的支撑业务目标达成的最佳技术实践。

我个人认为体系建设最重要的五点要素如下:

组织结构:技术团队的人员构成、新人落地、人员培养、知识库建立以及团队目标和分工;

流程规范:好的流程规范是保证团队大部分人可以遵循同一个目标和方向前进,降低内耗;

技术体系:技术团队一定要做自己的技术体系搭建,从技术选型、demo验证到技术落地以及持续优化;

沟通协作:现在很多工作单靠自己是无法完成的,需要多人协作甚至跨团队合作,因此高效的沟通协作机制很重要;

性能文化:其实不仅仅是性能文化,每种技术实践都有自己提倡的文化,比如测试的文化就是质量+效率。文化的本质就是团队所认可并且践行的一种理念,一种有益于业务、团队和个人利益的追求。

其实无论哪一门技术领域,都需要先了解理论,才能更好的实践。所有的技术都是服务于业务,一切以业务目标为导向的开展技术实践。

技术的最大价值就在于,支撑业务更好的发展而体现自身的价值。 技术实践到最后,构建最适合自己团队和业务目标达成的体系,并且需要持续改进。

下面是我整理的2023年最全的软件测试工程师学习知识架构体系图

一、Python编程入门到精通

请添加图片描述

二、接口自动化项目实战

请添加图片描述

三、Web自动化项目实战

请添加图片描述

四、App自动化项目实战

请添加图片描述

五、一线大厂简历

请添加图片描述

六、测试开发DevOps体系

请添加图片描述

七、常用自动化测试工具

请添加图片描述

八、JMeter性能测试

请添加图片描述

九、总结(尾部小惊喜)

人生如一场马拉松,不是速度有多快,而是坚持到最后。因此,不要放弃梦想,努力奋斗,迎接挑战和机遇。坚韧不拔的毅力将成就辉煌!

生活中总会遇到各种挫折和困难,但只要坚定信心、持之以恒地努力奋斗,就一定能够克服困难,迎来胜利的曙光!不断前进,梦想成真!

人生路上,永远没有捷径可走。只有脚踏实地、勇往直前,才能到达成功的彼岸。因此,让我们一起努力奋斗,不断挑战自我,成就辉煌人生!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/506366.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

什么是边缘计算盒子?要看哪些参数

一、什么是边缘计算盒子 边缘计算盒子(Edge Computing Box)是一种用于边缘计算的设备,通常包括计算、存储、网络和安全等功能。它通常是一台小型的计算机,可以放置在物联网设备、传感器或其他边缘设备附近,用于处理和…

北峰通信,用专业打造“全方位、立体化”应急通信保障体系

最近热映的电影《惊天救援》里,杜江饰演的消防员韩凯,在一次化工园区发生爆炸后,他作为消防救援站里的通信员,第一时间奔赴重灾区,及时将第一现场的情况传到了后方指挥部。 众所周知,通讯系统是生命线系统的…

linux 定时器

Linux 系统实现底半部的机制主要有tasklet,工作队列和软中断。 tasklet 和工作队列都是调度中断底半部的良好机制,tasklet 基于软中断实现。 内核定时器也依靠软中断实现;内核中的延时是忙等待或者睡眠等待,为了充分利用CPU资源&#xff0c…

还在找ChatGPT的国内镜像?这些都很不稳定,试试这两个

ChatGPT 因为账号限制的原因,注册的流程比较复杂,特别是需要国外的手机号进行接收验证码,这就难坏了很多国内的用户。 为了能用上ChatGPT 很多人免费的搭建了一些国内能够使用的ChatGPT 。这些网址不用魔法就能够使用ChatGPT ,非…

基于docker的apisix网关的java插件开发

基于docker的apisix网关的java插件开发 1 创建java插件项目1.1 从github上获取demo1.2 改造demo 2 快速部署2.1 重新制作apisix镜像2.2 修改/apisix-docker/example/apisix_conf/config.yaml2.3 修改/apisix-docker/example/docker-compose.yml2.4 重新启动apisix网关 3 apisix…

网络基础学习:osi七层模型

osi七层模型 什么是OSI,什么是ISO?为什么ISO要提出OSI网络七层模型?OSI七层的划分以及具体内容第七层 应用层第六层 表示层第五层 会话层第四层 传输层第三层 网络层第二层 数据链路层第一层 物理层 每一层与设备的对应关系 什么是OSI,什么是…

大模型混战,最先实现“智慧涌现”的会是谁?

作者 | 曾响铃 文 | 响铃说 几秒钟写出了一篇欢迎词; 小说人物乱入现实,快速创作不重样的故事; 鼠标一点,一封英文工作沟通邮件撰写完成; 准确解出数学应用题,还给出解题步骤; 甚至还能理…

【微控制器】16KB R5F102AAASP、R7FA2L1A93CFL 128KB和R7FA2E1A73CFJ 64KB 嵌入式技术资料

R5F102AAASP RL78 16位微控制器具有超低功耗、增强性能、高集成度和各种强大的外设功能。得益于以上特性,RL78 MCU非常适合用于各种应用,包括电池供电设备和家用应用。 RL78微控制器MCU系列包括通用和专用器件。这些MCU可为系统设计人员提供高级省电特性…

实验五 Java多线程程序设计

实验目的 掌握Runnable接口实现多线程的方法掌握Thread类实现多线程的用法掌握Java语言中多线程编程的基本方法 实验内容 线程接力(45分) 编写一个应用程序,除了主线程外,还有三个线程:first、second和third。firs…

MySQL基础(二十四)索引的数据结构

1 为什么使用索引 顺序查询和数据使用二叉树结构再进行查询,如图: 2 索引及其优缺点 2.1 索引概述 MySQL官方对索引的定义为:索引(Index)是帮助MySQL高效获取数据的数据结构。 **索引的本质:**索引是数据结构。你…

第九章 使用Vsftpd服务传输文件

文章目录 第九章 使用Vsftpd服务传输文件一、文件传输协议1、FTP介绍2、FTP工作模式 二、Vsftpd服务程序1、安装Vsftpd服务程序2、防火墙配置3、过滤注释信息并通过重定向符写回原始的主配置文件4、Vsftpd服务程序常用的参数以及作用5、匿名访问模式(1)、…

【自己更换模型】如何用 Serverless 一键部署 Stable Diffusion?

作者:寒斜 上一篇讲了如何使用 Serverless Devs 和函数计算快速体验部署 Stable Diffusion,本篇继续聊聊如何解决动态模型加载的问题,从玩起来到用起来。 思路 其实很简单, 我们只需要将镜像里面的动态路径映射到 NAS [ 1] 文件…

为什么调度也需要“血缘分析”和“影响分析”?

摘要:数据治理中经常要遇表或者字段级“血缘分析”和“影响分析”,但是真正在数据ETL调度操作过程中使用影响和血缘分析频繁,看白鲸开源的WhaleStudio如何解决这个难题。 提到“血缘分析”和“影响分析”,普通开发者第一印象就是数…

【Java EE 初阶】线程池简介及实现过程

目录 1.线程池是什么? 2.为什么要使用线程池? 3.如何使用线程池 1.JDK给我们提供了一些方法来创造线程池 4.设计模式之工厂模式 1.工厂模式用途 5.自定义一个线程池 1.可以提交任务到线程池,那么就会有一种数据结构来保存我们提交的任…

java lambda表达式详解

一、Lambda初识 我们知道,在Java中,接口是不能实例化的,但是接口对象可以指向它的实现类对象。如果接口连实现对象都没有呢?那还可以使用匿名类的方式,如下: public class JavaTest { public static void main(Strin…

jenkins,gitlab,实时构建推送

首先jdk,jenkins安装好,新版jenkins不支持jdk8 然后安装环境maven,git 环境配置 插件安装 gitlab插件 Build Authorization Token Root插件 插件环境整好之后新建个任务 源码管理,填入仓库https地址,添加git…

大势智慧软硬件技术答疑第一期

1.重建大师生成的实景三维模型,模型周边的道路植物被压平了,怎么保留植物道路原有形状? 答:这个是单体化生成的地理实体场景,会把地物压平,可以用模方将单体化的模型加入到osgb中。 2.直接导入空三的话这个…

采用docker部署时kafka共享zookeeper的网络配置

采用docker部署kafka、zookeeper,一般的做法是创建一个docker网络,然后kafka、zookeeper都使用这个网络。问题是,我部署到生产环境的时候,这种做法被禁止了。原因是添加了这个docker网络以后,服务器就无法访问了。该服…

Es读写调优、深度分页

写入 ES支持四种对文档的数据写操作 create:如果在PUT数据的时候当前数据已经存在,则数据会被覆盖,如果在PUT的时候加上操作类型create,此时如果数据已存在则会返回失败,因为已经强制指定了操作类型为create&#xf…

Spring核心 AOP

1.什么是AOP? AOP(Aspect Orient Programming),直译过来就是面向切面编程。AOP是一种编程思想,是面向对象编程(OOP)的一种补充。面向对象编程将程序抽象成各个层次的对象,而面向切面…