2023年每天都投递很多份简历,但都石沉大海,我还投吗?测试人该何去何从?

news2024/11/16 9:39:28

各大互联网公司的接连裁员,政策限制的行业接连消失,让今年的求职雪上加霜,想躺平却没有资本,还有人说软件测试岗位饱和了,对此很多求职者深信不疑,因为投出去的简历回复的越来越少了。

另一面企业招人真的变得容易了吗?有企业HR吐槽,简历确实比以前多了好几倍,其实是变相的增加了招聘难度,以前是从10份中找一个合适的,现在是从100份中找一个合适的,合适的依然那么少!

问题出在哪了呢?
·简历很多但是大部分都是初级水平;

· 想找一个全栈自动化测试很难有满足要求的;

· 要求薪水很高,实际能力却达不到。

传统手工测试模式

已成为过去式

测试行业发展到现阶段,目前测试从业者已达成共识的是:传统的手工测试模式已成为过去式!

测试行业目前从业门槛在不断提高,几乎所有测试岗都要求懂代码、掌握自动化测试技术。如果在简历里只写功能测试经验,是很难通过简历筛选的,所以,测试求职者在写简历时都会加上一些高端技能的关键字,比如自动化、appium、接口自动化、测试开发...

这样做,虽然过得了简历关却过不了面试关:

·自动化测试中,如何解决Case依赖?

· 你们公司业务中,自动化和手工分别占比多少?分别用来做什么业务?

· appium是如何让Case和手机进行通信的?

· 接口自动化中加解密如何处理?

几个问题下来就原形毕露。如果没有真的做过项目,是一个问题也回答不出来,只会被问的哑口无言。美化简历只是解决了表象问题,通过面试的根本,是真正掌握了自动化实战技能。

自动化测试是

新一代“Office”技能

那么,掌握了自动化能达到什么样的薪资呢?
打开招聘网站,你就会发现很多高薪职位在招聘JD中,纷纷表示“会自动化测试优先”!对于2年以上经验的自动化测试工程师年薪为18万-50万,远高于同等工作年限的功能测试。

同时腾讯、阿里、头条等大型互联网企业更是大量使用自动化,自动化测试正逐渐成为未来10年,测试工程师的新一代“Office”技能。

接下来我会分阶段的给大家分析一下应该怎么从基础开始逐渐深入的学习自动化测试,没耐心看下去的朋友们也可以直接拉到文末,领取基础阶段的全套学习资源。

第一阶段 测试基础
测试基础是软件测试最最最重要的部分,只要你是做测试,不管是什么测试,测试的基础、理论知识都是必须学会的。

最好学到什么程度呢,最好是能够理解,并能够用自己的话给复述出来。

毕竟面试初级测试的时候,问的问题都是从基础理论上进行考核的。

那测试基础有哪些内容呢?

测试的定义、测试的分类、测试的方法、测试的生命周期。

测试计划、测试方案、测试策略、测试用例的编写。

BUG的定义、BUG的分类、BUG的六要素、BUG的生命周期。

测试和开发流程的关系、瀑布流、V字形、W字型(双V)、螺旋型、敏捷等等。

PDCA、5W2H等分析管理的方法

质量管理体系CMMI(了解)

嗯,大概就是以上的内容吧,以上全部都是理论和文档能力、只要你肯背、肯写,都是能独立的掌握的。

第二阶段 常见的测试工具
测试工具永远是软件测试人员的得力助手,不能完全依赖工具,但也不能没有工具,在学习软件过程中,要著中软件测试工具的使用,下图覆盖初、中级软件测试工程师所需具备的测试工具,要想学好,下手学习吧。

混在软件测试职业圈,工具千千万,不可能每个都会用,至少要知道有哪些工具可用,什么时候该用什么工具,每个工具能解决什么问题,然后再深入应用几款工具即可,下面就带大家总结一下。

测试管理工具

禅道:简单好用,市场主流,互联网行业居多
Jira:简单好用
QC/ALM:复杂,收费,电信/金融行业使用较多
bugzilla:功能简单
svn:代码和文档管理工具
git:但是多分支管理比svn好

 接口测试工具

Jmeter(开源)
postman
SoapUI
推荐使用 jmeter 和 postman。

性能测试工具

loadrunner:大而全,要学精通还是有点难度,重量级工具,过去和现在都是行业老大
jmeter:基于java平台的性能开源测试工具,其实也很强大,而且比较好用
Locust:基于python的一个性能测试工具

白盒测试工具

junit/testng:java下的单元测试框架
unittest/pytest:python下的单元测试框架
cppunit:跨平台的c++单元测试框架
PhpUnit:Php语言下的单元测试框架
TestBed:一个重量级的白盒测试软件,可以进行单元测试、集成测试、静态测试,军工行业常用
Klockword:静态测试工具,军工行业常用

持续集成工具

Jenkins:比较常见的一种CI工具
Hudson

网络测试工具

以HTTP/HTTPs协议为主,网络测试工具有:
wireshark
fiddler
charles

app自动化工具

appium:这个应该算是目前最流行的基于app的自动化测试框架了
uiautomator:安卓自动化测试框架,基本上支持安卓的所有事件操作
Monkey:安卓自带的测试工具
Monkey Runner:Monkey改进版,支持自己编写脚本测试,用Python语言
Robotium:一款国外的Android自动化测试框架,用法比较

web安全测试工具

appscan:算是用的非常多的一款工具了,扫描后能够将绝大部分的漏洞找出来
fiddler:网络抓包工具
burpsuite:暴力破解、抓包工具
skipfish:这是一个轻量级的安全测试工具,处理速度很快,每秒可处理2000个请求。

第三阶段 代码学习
好了,学完了以上两个部分,恭喜你,你已经是一个出色的初级测试工程师了。

接下来,你要考虑你的发展方向了

是成为一个自动化测试工程师呢?

还是性能测试工程师呢?

还是安全测试工程师呢?

啊!这个问题好难!我也不知道该怎么选。

反正我啥都会一点,哪个岗位都能去面一面。

关于方向的选择,看我的这篇文章

嗯,相信你心中已经有了答案了,那我们继续往下面说。

这个阶段,我们应该学习代码了,关于编程语言的选择,我推荐Java或者python。

还有数据库也是必须掌握的!在工具篇的学习里,我认为你已经可以掌握数据库的相关的应用了!

所以现在各位可以去学习编程语言了,

不过不用像开发那样,学的那么深入。

比如Java,只需要学完JavaSE的部分就够你用了。 python的话也是一样的,把基础的部分学完就行了。

总之前期你两者二选一的学习就OK了。

啥?你问我学的啥。

我当然是两种都会啊

哈哈哈哈哈哈哈,惊不惊喜!意不意外!

自动化方向

等你代码已经基本掌握了,嗯,很好,接下来就要学习各种自动化测试了。

各种单端测试框架:unittest(python)、pytest(python)、JUnit(java)

WEB自动化测试框架:selenium(适用于java\python\javascript)

APP自动化测试框架:appium(适用于java\python\javascript)

以上的内容,根据你学的语言进行选择。

appiunm和selenium根据你参与的项目进行选择。

不过无所谓了,反正迟早都要学会的。

这部分的教程太多了,你学会了编程的基础后,随便百度,好多博客论坛都有教程。

而且凭你那时候的水平,你都能轻松的看懂。

性能方向

对loadrunner和jmeter的掌握更加的深入。

可以手写脚本、脱离录制。

学会了多线程编程、能够手写java或者python、不用工具直接实现压测。

学习linux,毕竟性能总是和服务器打交道的。

学习系统架构的相关知识、方便你更容易的分析系统瓶颈。

说实话、性能方向的提示更难、因为需要掌握的东西太多了。

性能测试做深入了,基本上就是架构师的水平了。

可能你现在看着这个性能方向的学习一脸懵逼。

没关系、等你把上面的编程语言学会了你就不懵逼了。

安全方向
渗透测试

SQL注入

暴力破解

脱库

等等

其实安全测试基本上偏向于网络攻防了,也就是传说中的黑客了,不过我们都是好人,这个的发展方向就是白帽子。

推荐知道创宇的学习体系。

我估计你看到这里就更懵逼了。

没关系、等你把基础的东西学会就知道我在说啥了。

毕竟你现在还是一个小白嘛。

不要去纠结这种小事。

各位在这个阶段,正常情况都应该是中级测试工程师的水平了。

第四阶段 架构学习

 前三个阶段学习完成后,各位就应该考虑怎么写代码更合理了。

怎么去测试更全面。

怎么才能更好的保障项目的质量。

我认为,在这个阶段,应该回头重新学习一遍测试基础。

因为这个阶段的提高是思想、方法的提高了。

上面讲的都是教你应该怎么做。

在这个阶段你要自己去发现、为什么要那样做。

跨过了这个阶段就基本上可以成为专家了。

学习都是水到渠成的,在这个时候,你应该已经掌握了不少框架了,甚至自己也能开发合适的框架了。

自动化测试框架、性能测试框架等等。

已经有了属于自己的一套东西了。

在群里或者论坛上去装逼、别人都会尊称你一声大佬了。

可能你也学会了一些其他的技术了,甚至在往全栈等方向跨进了。

总之,到了这个阶段就没什么学习路线了。

相信你如果掌握了上图上面所有的知识技能,并且能够灵活的运用的话,月薪20k以上并不会是什么问题。

解决问题的方法有很多,但要找到一个合适的方法那就需要积累经验,尽信书不如无书,人工撰写肯定有纰漏,如有争议之处欢迎大家在下方留言讨论。

最后: 下方这份完整的软件测试视频学习教程已经整理上传完成,朋友们如果需要可以自行免费领取【保证100%免费】

 这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

 

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

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

相关文章

计算机视觉--利用HSV和YIQ颜色空间处理图像噪声

前言: Hello大家好,我是Dream。 今天我们将利用HSV和YIQ颜色空间处理图像噪声。在本次实验中,我们使用任意一张图片,通过RGB转HSV和YIQ的操作,加入了椒盐噪声并将其转换回RGB格式,最终实现对图像的噪声处理…

mysql之host is blocked问题

程序上线一段时间之后,更新程序总是遇到这个问题 每次都是重启几次程序,或者执行 flush hosts; 毕竟指标不治本,抽出时间决定分析一下问题,查阅了几篇博客。(感谢这几位大佬) https://blog.51cto.com/u_…

飞机打方块(四)游戏结束

一、游戏结束显示 1.新建节点 1.新建gameover节点 2.绑定canvas 3.新建gameover容器 4.新建文本节点 2.游戏结束逻辑 Barrier.ts update(dt: number) {//将自身生命值取整let num Math.floor(this.num);//在Label上显示this.num_lb.string num.toString();//获取GameCo…

数据结构—队列

队列 队列的概念及结构队列的实现 队列的概念及结构 队列:只允许在一端进行插入数据操作,在另一端进行删除数据操作的特殊线性表,队列具有先进先出FIFO(First In First Out) 。 入队列:进行插入操作的一端称为队尾。 出队列&am…

Day8 智慧商城

项目演示 项目收获 创建项目 调整初始化目录 1.删components里的所有文件 2.删views里的所有文件 3.router/index.js 删路由 删规则 import Vue from vue import VueRouter from vue-routerVue.use(VueRouter)const router new VueRouter({routes: [] })export default route…

软件开发合同范本word文档,《某公司软件开发合同》,15页范本供参考

上一篇介绍了软件生命周期全过程,软件工程全周期全过程20项文档模板,附下载。从《合同》到《需求规格说明书》到软件设计、开发、实施、验收、维护等全过程相关文档模板。有朋友反馈附件内容没有补全,本次及后续会用实际案例补全附件内容&…

Backblaze 2023 Q2 硬盘故障质量报告解读

Backblaze 在其博客上发布了 2023 年第二季度的存储设备统计数据。这些数据包括了 Backblaze 在该季度所拥有的存储设备的数量、故障率和更换率等信息,这些信息对于了解存储设备的可靠性和性能非常有用。 在最新的Backblaze硬盘使用统计报告中,我们看到了…

OLED透明屏介绍:领先科技的革命性创新

OLED透明屏作为一项领先的科技创新,在产品设计和用户体验方面展现出了巨大的潜力。 在这篇文章中,尼伽将介绍OLED透明屏的定义、特点、应用领域以及未来发展趋势,以帮助您全面了解OLED透明屏。 一、OLED透明屏的定义与原理 1.1 定义&#x…

概念解析 | 走进射线管积分:探索数学与现实世界的神秘桥梁

注1:本文系“概念解析”系列之一,致力于简洁清晰地解释、辨析复杂而专业的概念。本次辨析的概念是:射线管积分。 走进射线管积分:探索数学与现实世界的神秘桥梁 射线管积分雷达成像 射线管积分(Ray Tube Integration&a…

leetcode 188. 买卖股票的最佳时机 IV

2023.8.21 这道题是 买卖股票的最佳时机III 的升级版&#xff0c;即买卖次数限制为k次&#xff0c;做法和上一篇如法炮制&#xff0c;直接看代码&#xff1a; class Solution { public:int maxProfit(int k, vector<int>& prices) {vector<vector<int>>…

Django模板语法,带你快速入门

目录 案例一&#xff1a;登录页面 案例二&#xff1a;for案例 if案例——单个字符串的传递&#xff0c;列表的传递&#xff0c;字典的传递 模板语法其本质&#xff1a;本质上&#xff0c;Django的模板语法就是在html中&#xff0c;写一些占位符&#xff0c;由数据对这些占位符…

6.824 lab2 raft实现

目录 1 难点及完成思路&#xff1a; 1.1 难点分析&#xff1a; 1.2 完成思路&#xff1a; 1.3 实验心得&#xff1a; 1.4 报告结构&#xff1a; 2 Leader选举模块 2.1 思路概括&#xff08;代码角度&#xff09; 2.2 注意问题&#xff1a; 2.3 代码细节&#…

[WMCTF 2023] crypto

似乎退步不了&#xff0c;这个比赛基本不会了&#xff0c;就作了两个简单题。 SIGNIN 第1个是签到题 from Crypto.Util.number import * from random import randrange from secret import flagdef pr(msg):print(msg)pr(br"""........ …

WMS仓库管理系统选择指南:如何确保您的仓库提高效率?

如何选择WMS仓库管理系统&#xff1f;仓库管理主要包括以下四个方面&#xff1a; 1.商品出入库管理 2.库存调拨 3.库存盘点 4.虚拟库存/实际库存管理 为了更好地管理仓库&#xff0c;我们需要确保基本的硬件设施得以满足&#xff0c;例如划分存储区域、使用货架以及进行员工培训…

Vivado2018.3版本_编译下载打包固化程序

Vivado2018.3版本_编译下载打包固化程序 概述&#xff1a; 在Vivado中开发导出硬件平台&#xff0c;然后在SDK中进行C语言的开发工作&#xff0c;然后把SDK编译生成的.elf文件加入Vivado工程中&#xff0c;编译生成.bit文件&#xff0c;转换成.mas文件&#xff0c;就可以固化到…

使用kubeadm工具升级kubernetes

一、背景&#xff1a; kubeadm部署的kubernetes集群进行升级&#xff0c;通常先升级控制节点&#xff0c;控制节点升级完成后再升级工作节点&#xff0c;本博文只升级了控制节点&#xff0c;工作节点按照相同的流程进行升级即可 环境说明&#xff1a; 主机名节点11.0.1.200k8s…

机器学习笔记之优化算法(十五)Baillon Haddad Theorem简单认识

机器学习笔记之优化算法——Baillon Haddad Theorem简单认识 引言 Baillon Haddad Theorem \text{Baillon Haddad Theorem} Baillon Haddad Theorem简单认识证明过程证明&#xff1a;条件 1 ⇒ 1 \Rightarrow 1⇒ 条件 2 2 2证明&#xff1a;条件 3 ⇒ 3 \Rightarrow 3⇒条件 1…

功率放大器的介绍和应用领域有哪些

功率放大器是将输入信号的功率放大到输出端所需水平的一种电子设备。在实际应用中&#xff0c;功率放大器被广泛使用于音频、视频、通讯等领域。下面&#xff0c;安泰电子将详细介绍功率放大器的工作原理、类型以及应用领域。 功率放大器的工作原理是将输入信号的功率放大到输出…

js 简单的页面导航

实现效果&#xff1a; 实现原理&#xff1a; 实现原理是通过创建数组里面包含对应页面的信息&#xff0c;当点击的时候为数组传递一个对象&#xff0c;里面包含要显示的信息。 跳转链接实现原理&#xff1a; 通过创建一个数组&#xff0c;里面包含所有可以跳转的页面链接名称&a…

【3Ds Max】可编辑多边形“边界”层级的简单使用

目录 示例 &#xff08;1&#xff09;挤出 &#xff08;2&#xff09;插入顶点 &#xff08;3&#xff09;切角 &#xff08;4&#xff09;利用所选内容创建图形 &#xff08;5&#xff09;封口 &#xff08;6&#xff09;桥 示例 这里我们首先创建一个长方体&#xff…