爆肝整理,性能测试-全链路压测与普通压测区别总结,进阶高级测试...

news2024/11/24 4:32:56

目录:导读

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


前言

抛出一个问题:性能测试能对测试工程师本人和企业带来什么价值?

随着不断的学习成长和工作中的应用实践以及和很多业内同行沟通交流,我总结了如下几点性能测试的优点和价值:

提升测试工程师的技术能力;
提升对系统架构和业务逻辑的了解;
提升测试工程师在职场和求职市场的竞争力;
提前发现系统潜在的不稳定因素,提高线上系统稳定性;
更精准的流量评估和容量规划,降低系统的硬件成本和维护成本;
保障系统在大促秒杀等场景和峰值流量冲击下的稳定性,助力业务目标达成;

全链路压测的衍生和挑战
随着互联网行业不断发展,系统架构越发复杂,业务场景越发多样化,对性能测试的要求也越来越高。

传统压测方式已经无法满足业务和技术的发展需要,全链路压测,就是在这样的背景下应运而生的。

作为性能测试领域新阶段的最佳实践,全链路压测在更多公司被探索和应用的过程中,也遇到了种种挑战。

传统压测和全链路压测的区别

相比于传统的压测方式,全链路压测在性能测试领域,有其独到的特殊性:

压测类型压测工具承接方式压测环境环境特点压测场景压测过程测试结果投入成本
传统压测Jmeter、Locust、Loadrunner需求响应式,被动测试环境/性能环境环境不稳定/配置低/压测结果参考性不高单机单接口、单机单链路、单机混合链路可观测性较低,延时较高数据维度小,无法提供太多数据便于分析需要搭建单独的压测环境
全链路压测压测集群、流量引擎、录制回放发现系统所有链路瓶颈点,主动生产环境环境稳定/完全真实环境/压测结果真实可靠包含覆盖范围内的所有核心链路及场景实时可视化观测提供多维度细粒度的数据,便于快速定位问题优化完全线上生产环境进行,无须单独搭建环境

以某银行信用卡中心性能测试为例,当时也是传统压测占大多数。要完成一次完整的压测,需要经历下述多个环节才可以完成:

业务研发部门提出压测需求,压测团队和业务方沟通后确认是否执行;

业务部门提供压测范围、涉及链路接口、数据并且准备相关的铺底数据和参数化数据;

压测团队和运维DBA沟通,准备相关的压测环境,开通防火墙及临时访问权限;

压测团队调试脚本,有问题需要业务研发协助定位解决;

开展压测,通过nmon、JDK自带工具获得压测数据,然后导出进行图表绘制,进行性能问题初步分析;

和业务研发、运维以及DBA沟通,一起排查定位问题;

优化发布后,再次验证(这个环节要持续多轮);

压测完成,统计压测结果,手动编写压测报告;

上述过程还只是在测试环境进行压测,不仅耗时费力,还无法对生产环境的性能评估有足够的建议参考。每次上线特别是大促阶段,还是提心吊胆的怕出问题。

全链路压测落地过程中的挑战

虽然全链路压测解决了传统压测过程中的种种痛点,可以为线上性能评估提供更多详实的参考建议。

但在落地过程中,全链路压测依然要解决很多问题,主要有如下几点挑战:

链路梳理:现在大多数企业都是采用微服务架构来设计系统,且业务场景多样化,导致了系统架构异常复杂。要覆盖所有压测范围内的场景,就需要对涉及的所有应用及其调用关系进行梳理。目前业内还没有较好的链路梳理工具,导致这个过程需要人肉来梳理,耗时且费力。

流量评估:不同企业在监控体系方面的建设都不一样,要进行全面详细的流量评估,需要有完善的监控平台来进行各维度的数据采集和展示。

数据隔离:生产全链路压测最重要的一点是避免对生产数据造成污染。
业内常见的做法有如下两点:
全链路监控:在全链路压测实施过程中,实时的可视化监控监控是很重要的一点。在整个压测链路中,能实时的观察到每个调用链路的具体信息,对问题的快速发现和定位有重大的帮助。

压测数据写入正式库表,然后通过特殊的字段进行清理(业务改造成本大,清理风险高,耗时久)

采用影子库表,压测流量数据进行影子库表,在不对生产数据造成污染的情况下进行压测;

服务保护机制:全链路压测是在生产环境进行,压测过程中,除了要防止数据污染,还要考虑到不把生产服务压垮。因此需要一套完整的机制来保证,压测在正常实施的同时,不对生产服务应用造成影响。

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

一、Python编程入门到精通

请添加图片描述

二、接口自动化项目实战

请添加图片描述

三、Web自动化项目实战

请添加图片描述

四、App自动化项目实战

请添加图片描述

五、一线大厂简历

请添加图片描述

六、测试开发DevOps体系

请添加图片描述

七、常用自动化测试工具

请添加图片描述

八、JMeter性能测试

请添加图片描述

九、总结(尾部小惊喜)

只有在放弃时,才能切身体会到奋斗的重要性。努力拼搏不一定能得到想要的结果,但不努力肯定什么都得不到。在追求目标的路上,保持勇气和坚定信念,才能最终实现自己的价值和梦想。

在人生的道路上,不要被困难和挫折所击倒,坚持自己的梦想与信念,迎难而上,勇往直前,成功的道路上充满艰辛,但只有不停地奋斗才能获得胜利!

每一天都是一个新的开始,不要给过去和未来留下任何遗憾。即使路途坎坷,也要勇往直前,相信自己的能力,追求自己的梦想。只有坚持不懈地奋斗,才能收获属于自己的成功和幸福。

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

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

相关文章

Shell脚本:expect脚本免交互

Shell脚本:expect脚本免交互 expect脚本免交互 一、免交互基本概述:1.交互与免交互的区别:2.格式:3.通过read实现免交互:4.通过cat实现查看和重定向:5.变量替换: 二、expect安装:1.…

Docker Registry部署

之前执行 docker pull的命令都是从 docker hub上拉取的,是docker 公共仓库,如果在公司中使用docker,我们不可能把自己的镜像上传到公共仓库,这个时候就需要一个自己的仓库(私有仓库),在局域网之…

usb 驱动

usb 驱动 usb 的基本概念 这个忽略, 基本上usb 是啥都知道 usb 的拓扑结构 usb 是一种主从结构的系统 usb主机由usb主控之器(Host Controller)和根集线器(Root Hub) 构成 usb 主控制器: 主要负责数据处理(就是我…

微信怎么批量自动添加好友?

如何批量加客户资源到微信,怎么加微信好友,这个基本上熟悉的人都会知道。 实际上,你知道所有添加微信好友的方式吗?或者说,你知道如何批量加客户微信吗? 比如说在一定时间内,把你所有的客户资…

AIGC文本生成智能应用(ChatGPT)提示工程师技巧

我是荔园微风,作为一名在IT界整整25年的老兵,今天来看一下AIGC文本生成智能提示工程师技巧。 当你在使用类似于ChatGPT这样的AIGC文本生成智能应用时,有没有想过,你所问的问题中的每一个词语对AIGC文本生成智能应用给你的回答的好…

记忆的助记器|如何使用联想记忆法

联想记忆法,也被称为记忆宫殿技术,已经使用了数千年,其记录可以追溯到古罗马和希腊。虽然现代第二大脑工具抢走了它的一些人气,但联想记忆法仍然是最有效的记忆方法之一。下面是你为什么需要在你的知识管理系统中使用它。 什么是…

比较快捷的设置第三方app 有系统权限和签名

1. app 里面添加 android:sharedUserId"android.uid.system" 2.编译出app.apk ,拷贝到源码目录 里面有很多签名文件 build\target\product\security 3. 拷贝签名工具到这个目录 签名工具原目录 out/host/linux-x86/framework/signapk.jar 4.拷贝需要的库文件到这…

Retry重试机制(五十)

当新的世界出现,请立即向他奔去 上一章简单介绍了Melody 监控(四十九), 如果没有看过,请观看上一章 本章节文章参考: https://juejin.cn/post/7234107489390116925 https://blog.csdn.net/hongyuan19/article/details/118995696 一. 重试 一.一 什么是重试 重…

身份证信息查看 案例

7-14位:出生年、月、日 17位:性别(奇数男性、偶数女性) 人物信息为:出生年月日:XXXX年X月X日 性别为:男/女 /** Copyright (c) 2017, 2023, zxy.cn All rights reserved.**/ package cn.str…

做了大半年软测,上班接触不到技术性的东西,是在浪费时间吗?

最近接到粉丝私信,苦恼目前的工作状态: 来这个公司大半年,现在主要做的是类似于淘宝的购物商城,以前也做应用系统什么的,可是感觉公司的软件测试岗位都是不着边的,因为做的都是功能测试,来了这么…

让你的文字更出色:编辑和校对的有效策略

要让你的文字更出色,掌握编辑和校对的有效策略至关重要。 以下是一些建议,帮助你提高编辑和校对水平,让你的作品更具吸引力和说服力。 1.分阶段进行编辑和校对 编辑和校对最好分阶段进行。先进行大局观的编辑,关注文章结构、逻辑…

Wildfly配置Datasources

配置Datasources前,需要先配置对应的JDBC驱动,配置方法,可以参考: Wildfly配置mysql8.0的JDBC驱动 之后,配置对应的Datasources。配置方法有两种,一种是通过管理后台配置,一种是通过手工修改配…

GLaDOS加速网络套餐edu教育网邮箱免费使用

产品介绍 教育优惠分享的好处,就是能一对一接触到网友的真实需求和最新的教育优惠产品,今天的这款也是网友投稿分享。 GLaDOS用于教育:建立开放思想和开放社会 GLaDOS Education可帮助学生,教师和学校找到他们掌握网络所需的工具…

【Python爬虫+数据分析】采集电商平台数据信息,并做可视化演示

文章目录 前言一、准备工作二、分析目标网站1.商品信息 三、编写爬虫程序五、总结 前言 随着电商平台的兴起,越来越多的人开始在网上购物。而对于电商平台来说,商品信息、价格、评论等数据是非常重要的。因此,抓取电商平台的商品信息、价格、…

虚拟机中使用Nginx + Keepalived 实现高可用 Web 负载均衡笔记

环境介绍 物理操作系统:Windows10 虚拟机软件:VMWare Workstation 16 Pro 虚拟操作系统统:CentOS7 Nginx:1.24.0 Keepalived:2.2.8 资源规划 在VMWare Worksattion中安装了2台CentOS7的虚拟机,桥接方式下…

ROS:常用可视化工具的使用

目录 一、日志输出工具——rqt_console二、绘制数据曲线——rqt_plot三、图像渲染工具——rqt_image_view四、图形界面总接口——rqt五、Rviz六、Gazebo 一、日志输出工具——rqt_console 启动海龟键盘控制节点,打开日志输出工具 roscorerosrun turtlesim turtles…

项目资源利用率是什么?如何提高?

任何项目经理的主要职责之一是跟踪项目资源,以便在需要时随时可用。为此,他们必须衡量资源利用率。通过计算资源利用率,项目经理和企业主可以更好地了解如何安排劳动力或设备等资源,以尽量降低成本,提高生产力&#xf…

Android关于图片资源管理的思考

作者:流浪汉kylin 一. 前言 当我们的项目比较大时,迭代的时间比较长的时候,我们往往都会对代码进行重构,会对代码进行一次系统的整合和规范的讨论,为了之后的开发能够避免写重复的代码,方便代码的维护和扩…

面向对象——权限修饰符、匿名内部类

package关键字 为什么要有包? 将字节码(.class)进行分类存放 包其实就是文件夹 包的定义及注意事项 定义包的格式 package 包名 多级包用.分割,如package com.heima里面的.就是分隔符 定义包的注意事项 package语句必须是程序的第…

扩容系统盘【centos-root】

问题描述: 磁盘空间有42G,但是系统盘只有6G。 问题抛出:(P2原本只有7G,其中有30G错误分配到nvmeOn1p2了)p2的30G空间怎么合理分配给系统盘? (执行: sudo growpart /dev/nvme0n1 …