2023年,从初级岗进阶到中级测试工程师岗,突破内卷...

news2024/11/17 8:46:39

目录:导读

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


前言

初级测试如何成长为中级测试工程师?
35 岁之后的出路在哪里?

前期发育不好,中期又干不过别人,所以问题集中爆发,导致境况急转直下,几年之内从风流潇洒的少年到焦头烂额的中年。

于是就会出现很尴尬的局面,和你工作经验匹配的大厂高端技术、管理等岗位因为水平不够,面试进不去,小公司的初级测试岗位又不招你。加上一旦行业不景气,比如疫情原因大量裁员,然后被辞退、失业,找不到工作,成了经典反例。

既然你看中了 IT 行业的高薪水入了坑,那么同时就需要付出相应的代价来适应这个行业的规则。只要是 IT 技术岗,无论是开发、测试还是运维,一个不变的规则就是,不断地学习、学习、再学习……

回想一下刚入行时,面试官是否问过这样的问题,你的职业规划是什么?你又是如何回答的,1-2 年时间内,注重技能和业务领域的经验积累,三年以后,在技术和管理方面有所偏重,有独挡一面的能力,再若干年以后,成为某领域的专家、领军人物……

如何从初级测试进阶为中级测试工程师?

1、提高编程能力,至少掌握一门编程语言
Java/Python,对于没有编程经验的初学者,可以选择 Python 上手,Python 语法简洁,功能强大,比 Java 好入门。

但是,Java 的优势在于和绝大数开发使用的是相同的语言,便于沟通,目前后端开发大部分都是使用 Java 语言。面试大厂时问 Java 会比较多,如果你的目标是大厂,那么 Java 是需要学习的,中小公司使用 Python 比较多,当然,两者都会再好不过了。而且,后期学习性能调优时,使用 Java 技术栈对理解底层 JVM 很有帮助。

2、学习一门脚本语言
推荐 shell,这个方向作为掌握 Linux 的基本命令的进阶方向再好不过了,可以看到很多大厂招聘都有掌握 shell 优先,很加分。

3、会独立搭建自动化测试框架
可以根据业务至少搭建一种自动化测试框架,自动化测试主要有 Web 自动化、App 自动化和接口自动化三种。

推荐大家首选学习接口自动化测试框架,因为需求量大,使用的公司最多,原因在于后端接口比较稳定,收益更大、更容易实现、维护成本更低,有更高的投入产出比,因此是公司开展自动化测试的首选,而 UI 自动化,由于前端界面经常变,维护成本较高,因此做的公司比较少。

现常用自动化测试框架:
接口自动化测试方向:Python+requests+pytest+yaml+alluer+Jenkins;
web自动化测试方向:Python+selenium4+pytest+POM+allure+Jenkins;
app自动化测试方向:Python+appium+POM+pytest+allure+Jenkins;

4、性能测试
至少会接口压测、数据库压测,有实际相关经验。可以根据生成的报告分析 TPS、并发量、吞吐量、资源利用率等关键指标,可以协助开发人员进行性能调优。

当然,性能测试水比较深,分析性能瓶颈这些,你如果玩得比较溜的话就能发展成架构师了,中级掌握基本的即可。

5、至少熟悉一个行业的业务知识
很多时候测试场景漏测导致线上问题,并不是你没有掌握好测试用例的设计方法,根本原因是你对你要测试的这个产品还不够完全熟悉,也就是对业务理解不够充分透彻。

深入掌握一个行业的业务知识对你迁移到另一个行业也是很有帮助,可以更快上手,例如我们经常看到一些招聘要求写着有某某行业测试经验优先,可以是电商、保险、银行等行业,不推荐游戏,嵌入式等硬件小众行业。

6、有独当一面的能力
这意味着你不再像初级测试工程师那样,只是停留在功能测试,点点点的层面,发现 Bug 首先甩锅给开发,而不是自己先分析定位问题的原因。也意味着你可以独立负责并主导一个完整项目的测试。同时还需要有独立思考的能力。

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

一、Python编程入门到精通

请添加图片描述

二、接口自动化项目实战

请添加图片描述

三、Web自动化项目实战

请添加图片描述

四、App自动化项目实战

请添加图片描述

五、一线大厂简历

请添加图片描述

六、测试开发DevOps体系

请添加图片描述

七、常用自动化测试工具

请添加图片描述

八、JMeter性能测试

请添加图片描述

九、总结(尾部小惊喜)

只有燃尽内心的火焰,才能驱散漆黑的迷途;只有昂首向前的勇气,才能登上属于自己的高峰。不止奋斗一天,不息努力一刻,我们才能成就不凡的人生。相信自己,为梦想而战!

只要心中有梦想,就别停止奋斗;只要坚持不懈,就能战胜困难;只要砥砺前行,就能收获成功的果实。相信自己,勇往直前,未来将无可限量!

只有拼尽全力,才能迎接梦想的绚烂绽放;只有持之以恒,才能跨越困难的重重磨砺。不要停下脚步,用汗水铸就辉煌,让奋斗成为你无悔的底色。

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

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

相关文章

vue3----解决字体包太大响应慢以及打包文件大的问题 解决font-spider 报错问题

vue3----解决字体包太大响应慢以及打包文件大的问题 && 解决font-spider 报错问题 前言:使用font-spider压缩字体(亲测可用) 参考链接:https://blog.csdn.net/nanchen_J/article/details/126973856 一、解决字体包太大响应…

【报错】ros1中使用opencv4.8时,报错Segmentation fault

现象: ubuntu18.04下,使用ros1进行opencv4.8,操作opencv2库的时候报错了 原因: cmakelists.txt中不要加 ${catkin_LIBRARIES} 否则ros在执行时会导入默认的3.2.0版本,与4.8.0冲突。

Mybatis-Plus不能更新对象字段为空值问题解决

问题描述: 在使用Mybatis-Plus调用updateById方法进行数据更新默认情况下是不能更新空值字段的,而在实际开发过程中,往往会遇到需要将字段值更新为空值的情况,该如何解决呢? 原因分析: Mybatis-Plus中字…

esp8266学习记录

前言 本文主要介绍了esp8266固件的烧写和基本AT指令,然后结合stm32开发板实现三个实验。分别是手机远程控制开发板LED;开发板温度传感器数据和光强上传到云平台实时监控;从云平台获取数据来控制开发板板载资源。每个实验我都保留了工程源和效…

[AJAX]原生AJAX——自定义请求头

客户端 <script>// 1、创建对象const xhr new XMLHttpRequest();// 2、初始化&#xff1a;设置请求类型和urlxhr.open(POST, http://127.0.0.1:8000/server);// 设置请求头// Content-Type&#xff1a;设置请求体内容类型// application/x-www-form-urlencoded&#xf…

分布式服务一篇概览

分布式服务开发复杂于服务间交互&#xff0c;协调&#xff0c;治理等。服务的复杂性由应用本身转移到了网络交互层。 一、关于12-factor问题 在开发分布式服务时&#xff0c;我们通常会考虑如12-factor 问题&#xff0c;如配置中心、无状态化、日志等。 一个代码库&#xff…

数通王国历险记之地址分析协议(ARP)

系列文章目录 数通王国历险记&#xff08;4&#xff09; 目录 前言 一&#xff0c;什么是地址解析协议&#xff08;ARP&#xff09; 二&#xff0c;封装和解封装 三&#xff0c;为什么需要地址解析协议&#xff08;ARP&#xff09; 四&#xff0c;ARP的验证实验 4.1&#x…

线程池ThreadPoolExecutor详解以及多种线程池的实现

1、线程池状态含义 ThreadPoolExecutor 使用 int 的高 3 位来表示线程池状态&#xff0c;低 29 位表示线程数量&#xff0c;之所以将信息存储在一个变量中&#xff0c;是为了保证原子性。 具体的高三位与线程池状态如下&#xff0c;引用自网课的图片&#xff1a; 2、构…

【数据库编程】最新版MySQL的JDBC编程(图文演示)

数据库系列文章 1. 零基础带你快速上手SQL语言 2. 玩转表及其数据 3. 上手表设计 4. 索引和事务 5. 最新版MySQL的JDBC编程 文章目录 前言1. 数据库编程的必备条件2. Java的JDBC编程3. JDBC工作原理3.1 数据库驱动包从哪里来 4. JDBC编程4.1 创建 Java 项目4.2 导入数据库驱动包…

使用wkhtmltopdf实现HTML转PDF

wkhtmltopdf注意事项 1.webkit内核的&#xff0c;所以建议使用之前用谷歌浏览器开发好网页 2.目前这个插件不再更新&#xff0c;所以内核老旧&#xff0c;只支持ES5的代码&#xff0c;所以ES6及以上的代码统统不支持&#xff0c;还有字符串拼接的 符号也不能使用&#xff0c…

JMeter录制HTTPS脚本解决办法

目录 前言&#xff1a; 背景 解决方法 前言&#xff1a; 在使用JMeter录制HTTPS脚本时&#xff0c;可能会遇到一些问题&#xff0c;例如SSL证书错误或请求失败等。解决这些问题的一种常见的方法是通过安装并信任服务器的SSL证书来解决。 背景 在对某项目进行脚本录制的时…

银河麒麟服务器v10 sp1 部署 Net6.0 项目

上一篇已经部署了Net6.0环境&#xff0c;本节将实现Net6.0程序部署&#xff0c;打开或新建项目&#xff0c;修改appsettings.json配置&#xff1a; 添加&#xff1a;"urls": "http://*:8061",//linux部署使用&#xff0c;端口可根据需求修改为自己的 在项…

快速幂与64位整数乘法(位运算)

矩阵快速幂和64位整数乘法 矩阵快速幂64位整数乘法 矩阵快速幂 问题链接&#xff1a; AcWing 90. 64位整数乘法 问题描述&#xff1a; 分析 快速幂需要用到位运算的思想&#xff0c;求 a b a^b ab&#xff0c;我们将 b b b转换成二进制的形式&#xff0c;假设 b 7 b7 b7&…

GB50254-2014电气装置安装工程低压电器施工及验收规范

为保证低压电器的安装质量,促进施工安装技术进步&#xff0c;确保设备安装后的安全运行,制定本规范。 本规范适用于交流 50Hz或60Hz额定电压为 1000V 及以下&#xff0c;直流额定电压为 1500V 及以下通用低压电器的安装与验收。不适用于: 1、无需固定安装的家用电器、电工仪器…

数据结构第一章 绪论——走进数据的世界

名人说&#xff1a;唯一可以确定的是&#xff0c;明天会使我们所有人大吃一惊。——阿尔文托夫勒 本篇笔记整理&#xff1a;Code_流苏(CSDN)&#xff08;一个喜欢古诗词和编程的Coder&#x1f60a;&#xff09; ✔ 课件资料及视频课程学习&#xff1a;王道 数据结构&#xff08…

哪家好用?四款国内外远程桌面软件横测:ToDesk、向日葵、TeamViewer、AnyDesk

一、前言 远程桌面软件对于职场人来说并不陌生&#xff0c;可以说是必备的办公软件之一。在经历过新冠疫情后&#xff0c;大家对于远程办公的认识越来越深入&#xff0c;也就在这段期间&#xff0c;远程桌面软件大范围的应用起来&#xff0c;真正走进大众视野并融入我们的工作和…

探索RabbitMQ的特色功能:释放RabbitMQ尖端特性的潜力

d1、简介 RabbitMQ 是一个功能强大的开源消息中间件&#xff0c;采用 AMQP&#xff08;Advanced Message Queuing Protocol&#xff09;协议来实现可靠的消息传递。它提供了可靠性、灵活性和可扩展性&#xff0c;被广泛应用于分布式系统、微服务架构和异步通信等场景。本文将介…

前台-GoEasy即时通讯

1.先去GoEasy官网下载源码 第一步 App.vue <script setup lang"ts">import { watch, ref, markRaw, reactive, nextTick, provide, InjectionKey } from vueimport headerIndex from /Layout/header/headerIndex.vueimport purchaseHeaderBig from /Layout/hea…

OpenCV(Mat类)

目录 1、什么是Mat类 2、Mat类组成 3、Mat类能存储的数据类型 4.Mat类的创建 4.1 利用矩阵宽、高和类型参数创建 4.2 利用矩阵Size()结构和数据类型参数来创建 4.3 利用已有Mat类来创建 5、Mat类的赋值 5.1 创建时赋值 5.2 类方法赋值 5.3 枚举赋值 6、Mat类数据的读取 …

【Linux】Redis 集群部署

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 Redis 集群部署 Redis 主从复制主从复制的作用主从复制的流程搭建Redis 主从复制安装 Redis修改 Redis 配置文件&#xff08;Master节点操作&#xff09;修改 Redis 配置文件…