当前位置: 首页 > news >正文

【软件测试】8年资深测试总结出的测试学习经验,从入门到测试开发......

目录:导读

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


前言

测试圈子里有一句话很流行:测试这个职位什么都要懂,但什么都不用懂多深。 我觉得这句话害了不少人,什么都懂点又什么都懂的不深,那只能是上面说的业余选手了, 用脚趾头想也知道谁也不会把核心的东西交给一个略有涉猎的人手上。

面试官当久了都有一种惯性,一看到简历上写着什么都会的人就想fail掉他。因为根据以往的经验,候选人几乎确实样样都懂,但每样只懂皮毛,没亮点,我们不放心把任何事情交给他。人的精力是有限的,顾的了这头,就得放下那头。

我是毕业很久之后才明白的这个道理。以前凡是跟测试沾边的都研究。最后我发现哪头都没顾上,面试的时候忽悠门外汉一套一套的,一碰上专业的就露馅了。 也有人跟我说身为一个高级工程师,你就得什么都会,什么都精。

这更是不切实际的想法。 如此小看一门技术是可笑的,任何一个领域的掌握都要经过长时间的实践总结,踩过无数前人挖的坑埋的雷,学习涉及到的衍生到的相关知识才能说有所成就。

努力成为最强的那个人
实力不是打了鸡血发奋图强一番就能取得的。 业余选手拼了老命也不可能战胜专业运动员,即便业余选手比专业运动员更努力也不行。

业余选手没有专业的教练,称职的陪练,合理的饮食,丰富的大赛经验。 不说别的,一个没有任何专业大赛经验的雏儿上了擂台能在经验丰富的赛场老流氓面前走几招?业余选手缺少了太多太多的资源–只有专业运动员才能获得的资源。

所以我们要努力的获取这些资源让我们变的更专业,那对我们来说这些资源都是什么?

领导肯让你去调研技术的时间,供你实战的业务场景,领域专家同事的帮助,解决成堆问题增长的经验值等等。 我们每到一个地方,都要尽快的成为当前团队实力最强的那个人,老外管这种人叫key person。

因为你最强最靠谱,所以碰到什么问题都会让你解决,有什么重要的项目都会提供给你最好的资源去做。然后你变得更强,有机会获取更多的资源去做更重要的事–良性循环。

如果你问精通一个领域有多难?
以docker的学习路线为例

第一阶段:学习原生docker的命令,dockerfile,docker-compose,可以应付简单的日常需求。

第二阶段:更深入的使用docker,知道docker的所有网络模型及其使用场景。知道如何正确的设置docker的启动参数,知道如何分配ip池,dns,网关。懂得使用路由方法改造docker的网络模式。懂得哪个storage driver适合自己。懂得一些简单的traboule shooting方法。能够将各种资源容器化(编译容器,部署容器,测试执行机容器,基础服务容器等等)

第三阶段:懂得使用mesos,k8s和swarm其中的一个来搭建并维护私有云环境,对编排工具有一定程度的理解。搭建各种产品需要的容器服务(监控,overlay网络,ingress网络,DNS,NFS,镜像仓库等等)。能够调用编排工具暴露的REST API 做2次封装以符合开发测试的需求。

第四阶段: 懂得docker更深入的原理(虚拟网卡设备对,名称空间,linux桥接设备,iptables,overlay网络原理等)。熟知linux系统与网络。越懂linux,越能解决时不时出现的问题。这一阶段不是在学docker,而是学习网络,学习操作系统。扎实的功底能够让你找到各种方便的解决方案。

第五阶段: 对docker和编排工具有极其深入的了解,熟知linux底层知识。能编写容器网络插件,能对社区做出代码贡献。

你看要把docker玩精了要学多少东西, 所以每当有人夸我docker用的好,我都特心虚。有人跟我争论过玩docker不需要懂什么底层原理,能用能满足开发测试的需要就行了。其实在一定程度上这是没错的,开车的人不一定要知道怎么修车,因为我们有4s店呢。只是在我们的这个行当里,并没有4s店。

出了问题要自己扛着,不能事事都依赖运维,毕竟QA不是开发的保姆,运维也不是QA的保姆不是么。

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

一、Python编程入门到精通

请添加图片描述

二、接口自动化项目实战

请添加图片描述

三、Web自动化项目实战

请添加图片描述

四、App自动化项目实战

请添加图片描述

五、一线大厂简历

请添加图片描述

六、测试开发DevOps体系

请添加图片描述

七、常用自动化测试工具

请添加图片描述

八、JMeter性能测试

请添加图片描述

九、总结(尾部小惊喜)

永远不要沉溺在安逸里得过且过,能给你遮风挡雨的,同样能让你不见天日,只有让自己更加强大,才能真正撑起一片天。

趁年华还在,趁笑靥仍美,趁阳光还明媚闪耀,结束每一个一成不变的日子,去做一个更好的自己,拥有更好的生活。

你可以一辈子不登山,但你心中一定要有座山,它会使你总往高处爬,它会使你总有个奋斗的方向,它会使你任何一刻抬起头,都能看到自己希望。

相关文章:

【软件测试】8年资深测试总结出的测试学习经验,从入门到测试开发......

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

【博学谷学习记录】超强总结,用心分享|Spark的RDD算子分类

概念 RDD(Resilient Distributed Dataset)叫做弹性分布式数据集,是Spark中最基本的数据抽象,代表一个不可变、可分区、里面的元素可并行计算的集合,它是一种抽象的数据模型,本身并不存储数据,仅…...

云原生系列之使用 prometheus监控远程主机实战

文章目录前言一. 实验环境二. 安装node_exporter2.1 node_exporter的介绍2.2 node_exporter的安装三. 在prometheus服务端配置监控远程主机3.1 在server端配置拉取node的信息3.2 重启prometheus3.3 通过浏览器查看prometheus总结前言 大家好,又见面了,我…...

2023年地方两会政府工作报告汇总(各省市23年重点工作)

新年伊始,全国各地两会密集召开,各省、市、自治区2023年政府工作报告相继出炉,各地经济增长预期目标均已明确。相较于2022年,多地经济增长目标放缓,经济不断向“高质量”发展优化转型。今年是二十大后的开局之年&#…...

第一章 企业管理概论

目录 一、企业及其形式 二、企业管理概述 三、企业管理理论与实践的产生与发展 四、网络时代的企业环境 五、网络时代企业管理的变革 一、企业及其形式 1、企业的概念 企业以市场为导向,以价值增值作为经济活动的目的; 企业是从事商品生产和流通的…...

独立图片服务器有什么突出之处

服务器是网络中非常重要的设施,承载着不同流量的访问,这就要求服务器具有快速的吞吐量、高稳定性和高可靠性。独立图片服务器作为独立服务器的衍生品,在数据利用方面的应用可以为企业在数据处理和分析方面带来一场革命。本文就将介绍独立图片…...

Linux驱动开发基础__mmap

目录 1 引入 2 内存映射现象与数据结构 3 ARM 架构内存映射简介 3.1 一级页表映射过程 3.2 二级页表映射过程 4 怎么给 APP 新建一块内存映射 4.1 mmap 调用过程 ​编辑4.2 cache 和 buffer 4.3 驱动程序要做的事 5 编程 5.1 app编程 5.2 hello_drv_test…...

若依框架---为什么把添加和更新分成两个接口

👏作者简介:大家好,我是小童,Java开发工程师,CSDN博客博主,Java领域新星创作者 📕系列专栏:前端、Java、Java中间件大全、微信小程序、微信支付、若依框架、Spring全家桶 &#x1f4…...

图论算法:Floyd算法

文章目录Floyd算法例题:灾后重建Floyd算法 Floyd算法用于求图中任意两点之间的最短路径,该算法主要运用了动态规划的思想。 思考: 给你几个点与边,可以组成一张图,那么如何求得任意两点之间的最短路径呢?…...

回顾 | .NET MAUI 跨平台应用开发 - 用 .NET MAUI 开发一个无人机应用(下)

点击蓝字关注我们编辑:Alan Wang排版:Rani Sun微软 Reactor 为帮助广开发者,技术爱好者,更好的学习 .NET Core, C#, Python,数据科学,机器学习,AI,区块链, IoT 等技术,将…...

部署有多个仓库的svn服务

centos7自带svn服务,现需要创建多个仓库,并实现用户读写功能 创建svn版本库 mkdir /home/svn mkdir /home/svn/confmkdir /home/svn/yk1 mkdir /home/svn/yk2 svnadmin create /home/svn/yk1 svnadmin create /home/svn/yk2 进入版本库yk1的配置文件路…...

Mapper文件注入问题

Mapper文件注入问题UserMapper that could not be found.原因分析解决方案程序正常运行,但是注入类爆红问题原因分析解决方法UserMapper’ that could not be found. 原因分析 撰写了mapper文件,但是没有注入spring容器 解决方案 添加mybatis.mapper-…...

基于微信小程序的国产动漫论坛小程序

文末联系获取源码 开发语言:Java 框架:ssm JDK版本:JDK1.8 服务器:tomcat7 数据库:mysql 5.7/8.0 数据库工具:Navicat11 开发软件:eclipse/myeclipse/idea Maven包:Maven3.3.9 浏览器…...

常用限流算法

简单时间窗口 算法逻辑:设置周期时间内的最大并发量问题:在周期尾端进去阈值并发后,进入下一周期时,又进入阈值并发量,则会出现瞬时并发量是阈值的2倍。 滑动时间窗口(优化) 算法逻辑&#xf…...

前端面经详解

目录 css 盒子充满屏幕 A.给div设置定位 B.设置html,body的宽高 C.相对当前屏幕高度(强烈推荐) 三列布局:左右固定,中间自适应 flex布局(强烈推荐) grid布局 magin负值法 自身浮动 绝对定位 圣…...

网页CAD开发快速入门

演示说明 提示:目前提供两种在网页中浏览编辑CAD图纸方案,详细说明见:MxDraw帮助 网页中打开CAD最简步骤: 第一步: 安装插件运行环境,下载安装(可能需要退杀毒软件):https://demo.mxdraw3d.com:3562/MxDrawx86Setup…...

C#开发的OpenRA的mod.yaml文件

C#开发的OpenRA的mod.yaml文件 在OpenRA游戏里,会看到这样一段代码: Manifest LoadMod(string id, string path){IReadOnlyPackage package = null;try{if (!Directory.Exists(path)){Log.Write("debug", path + " is not a valid mod package");return …...

【ESP32+freeRTOS学习笔记-(七)中断管理】

目录1、概述2、在ISR中使用FreeRTOS中专用的API2.1 独立的用于ISR中的API2.2 关于xHigherPriorityTaskWoken 参数的初步理解3、延迟中断处理的方法-将中断中的处理推迟到任务中去4 方法一:用二进制信号量来同步ISR与”延时处理的任务“4.1 二进制信号量4.2 函数用法…...

【总结】1591- 从入门到精通:使用 TypeScript 开发超强的 CLI 工具

作为一名开发者,掌握 CLI 工具的开发能力是非常重要的。本文将指导你如何使用 TypeScript 和 CAC 库开发出功能强大的 CLI 工具。快速入门首先,需要先安装 Node.js 和 npm(Node Package Manager),然后在项目目录中创建…...

【Java】int和Integer的区别?为什么有包装类?

int和Integer的区别?为什么有包装类? java是一种强类型的语言,所以所有的属性都必须要有一个数据类型。 PS:java10有了局部变量类型推导,可以使用var来代替某个具体的数据类型,但是在字节码阶段&#xff0…...

IGP(Interior Gateway Protocol,内部网关协议)

IGP(Interior Gateway Protocol,内部网关协议) 是一种用于在一个自治系统(AS)内部传递路由信息的路由协议,主要用于在一个组织或机构的内部网络中决定数据包的最佳路径。与用于自治系统之间通信的 EGP&…...

对WWDC 2025 Keynote 内容的预测

借助我们以往对苹果公司发展路径的深入研究经验,以及大语言模型的分析能力,我们系统梳理了多年来苹果 WWDC 主题演讲的规律。在 WWDC 2025 即将揭幕之际,我们让 ChatGPT 对今年的 Keynote 内容进行了一个初步预测,聊作存档。等到明…...

css的定位(position)详解:相对定位 绝对定位 固定定位

在 CSS 中,元素的定位通过 position 属性控制,共有 5 种定位模式:static(静态定位)、relative(相对定位)、absolute(绝对定位)、fixed(固定定位)和…...

多模态大语言模型arxiv论文略读(108)

CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文标题:CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文作者:Sayna Ebrahimi, Sercan O. Arik, Tejas Nama, Tomas Pfister ➡️ 研究机构: Google Cloud AI Re…...

LINUX 69 FTP 客服管理系统 man 5 /etc/vsftpd/vsftpd.conf

FTP 客服管理系统 实现kefu123登录,不允许匿名访问,kefu只能访问/data/kefu目录,不能查看其他目录 创建账号密码 useradd kefu echo 123|passwd -stdin kefu [rootcode caozx26420]# echo 123|passwd --stdin kefu 更改用户 kefu 的密码…...

RabbitMQ入门4.1.0版本(基于java、SpringBoot操作)

RabbitMQ 一、RabbitMQ概述 RabbitMQ RabbitMQ最初由LShift和CohesiveFT于2007年开发,后来由Pivotal Software Inc.(现为VMware子公司)接管。RabbitMQ 是一个开源的消息代理和队列服务器,用 Erlang 语言编写。广泛应用于各种分布…...

论文阅读:LLM4Drive: A Survey of Large Language Models for Autonomous Driving

地址:LLM4Drive: A Survey of Large Language Models for Autonomous Driving 摘要翻译 自动驾驶技术作为推动交通和城市出行变革的催化剂,正从基于规则的系统向数据驱动策略转变。传统的模块化系统受限于级联模块间的累积误差和缺乏灵活性的预设规则。…...

jdbc查询mysql数据库时,出现id顺序错误的情况

我在repository中的查询语句如下所示&#xff0c;即传入一个List<intager>的数据&#xff0c;返回这些id的问题列表。但是由于数据库查询时ID列表的顺序与预期不一致&#xff0c;会导致返回的id是从小到大排列的&#xff0c;但我不希望这样。 Query("SELECT NEW com…...

客户案例 | 短视频点播企业海外视频加速与成本优化:MediaPackage+Cloudfront 技术重构实践

01技术背景与业务挑战 某短视频点播企业深耕国内用户市场&#xff0c;但其后台应用系统部署于东南亚印尼 IDC 机房。 随着业务规模扩大&#xff0c;传统架构已较难满足当前企业发展的需求&#xff0c;企业面临着三重挑战&#xff1a; ① 业务&#xff1a;国内用户访问海外服…...

node.js的初步学习

那什么是node.js呢&#xff1f; 和JavaScript又是什么关系呢&#xff1f; node.js 提供了 JavaScript的运行环境。当JavaScript作为后端开发语言来说&#xff0c; 需要在node.js的环境上进行当JavaScript作为前端开发语言来说&#xff0c;需要在浏览器的环境上进行 Node.js 可…...