大环境之下软件测试行业趋势能否上升?

如果说,2021年对于全世界来说,都是一场极大的挑战的话;那么,2022年绝对是机遇多多的一年。众所周知,随着疫情在全球范围内逐步得到控制,无论是国际还是国内的环境,都会呈现逐步回升的趋势,各行业的机会也将显现出。那么,2022年的软件测试行业又会又怎样的风云变化呢?

是否行业已经趋于饱和了?如果饱和了,行业从业者将如何破局?如果没饱和,什么样的人适合走入这个行业呢?今天,我们就这些问题,来聊一聊2022年软件测试行业的主流趋势。希望能解决一部分小伙伴心中的困惑。

2022年,软件测试这个行业又将如何发展呢?我来谈一下我眼中软件测试行业发展的几个点,如果你处在这个行业,一定能体会到我说的对不对。

 

1、表面"衰落"的测试行业

鉴于过去的大形势变化, 不懂技术的测试工程师会逐渐被淘汰出局。 一波测试工程师的失业潮是在所难免的。

虽然早期我也呼吁身边的人赶紧脱离落后的业务体系, 脱离落后的测试技能, 但是看到很多人越来越生活艰难, 也是挺心痛的。

包括测试工程师的需求越来越少, 招聘职位也越来越少, 典型的新崛起的巨无霸公司比如facebook早期都没有QA。

甚至前几年一度有QA团队是否值得存在的争论。

比如一个典型的例子, 在搜索, 推荐, 机器学习等方向的算法测试是很重要的领域, 是需要专业的测试工程师参与的。 这个行业能容纳很多的测试团队。

但是测试行业这些年就没形成对这个领域的正确测试方法, 结果最后丢失了这个市场。 现在都是研发自己保证了。 因为找不到合格的测试工程师去保证这个业务。

一定要记住, 业务空间决定QA的生存空间, 这是所有行业都通行的道理。

如果你不能满足业务需求, 就会被淘汰出局, 要么选择退守防御要么选择勇于接受挑战

那测试行业的未来是什么样的?我个人必要还是持乐观态度的,且听后面分析。

2、测试从业人员的规模

从业人员规模跟生产力负相关, 跟业务规模正相关。 以后能有多大取决于技术和业务规模的双重因素。

首先是大环境因素, 随着各种行业的互联网化, IT行业在扩大, 外卖, 美甲, 甚至是无人机汽车航天产业都将成为科技公司。 研发的队伍会扩大, QA的队伍自然也会整体扩大。 前提是QA自己要跟得上时代。

其次是随着生产力提升自然就不会需要这么多人的。 哪个行业都这样, 测试行业并不特殊。

人数多意味着大家的价值跟富士康工厂里的工人一样廉价。 追求高附加值才是正确的路。 这对公司和测试团队都是双赢的。

第三个因素是行业地位。 devops的流行是推动了研发和运维的密切合作。 一旦这个阶段完成, 产品的生产部署会非常的流畅。

随之而来的就是问题会越来越早的暴露, 大家对质量会更加的重视。 到时候就会进入一个新的时代, DevQA。

运维逐渐会管道化, Dev和QA会成为新的主角。 只是到时候能撑大局的不一定是现在的软件测试工程师了,会是新时代的测试工程师。

技术层面上也会有创新。 以前的测试只能留下测试用例和业务知识文档 没有什么连续性积累。

随着接口测试, 质量监控, 覆盖率分析, 业务建模等技术的突破, QA也会形成自己稳定可积累的业务数据, 并逐渐形成自己的平台和业务。

业务空间+技术门槛的双重因素,是我坚信QA部门能长期存在的一个核心因素。

3、测试行业的管理会逐渐扁平化

几乎大部分的互联网公司都在分拆业务和QA团队从而提高执行力。 所以管理上百人的总监职位会越来越少, 而管理百人以下的总监会越来越多。 不排除少量的巨无霸仍然没有改变。 或者有些烧钱的初创公司倒行逆施。 其中这些测试管理者会遇到一些新的挑战, 比如更高层是研发出身居多。 不懂研发体系几乎没有发展空间了。 测试管理体系失去了上层建筑, 对未来的影响还是深远的。 会有阵痛, 但是结果肯定会是好的。

4、测试技术人才需求增多

原因是多方面的。

大公司因为分拆的问题。 不再有统一的测试技术支撑部门, 所以分拆之后的每个团队都需要组建对应的职能团队, 对测试技术人员的需求反而会增多。

中小型公司也苛求质量保证效果, 不止是要好, 而且要求更快, 也需要大量的技术人才。 这几年通过各种招聘网站的招聘job的描述也能看得出来。

5、外包测试的灾难和新生

原来做欧美日韩外包业务的公司会因为国内互联网的发展逐渐式微, 他们需要转型做国内。

但是国内对外包业务也大多排斥, 而且外包业务在效率沟通管理上都有诸多弊端。 其自身也无法承载对测试工程师的培养和长期发展。 所以这几年会有大量的外包测试工程师转型。

这方面需要有新的优秀的外包服务公司。能做到有自己的测试服务, 测试技术和高级的测试研究工程师才行。

比如东软也开始做自己的各种云测平台之类的, 就是一种为了迎合新时代的变更。

6、不懂开发的测试工程师已经是新时代的文盲

第一个是工作上已经没有太大的晋升空间。 第二个是也很难跳槽。 最好的结果是凭借多年的经验转管理。

我跟行业的很多测试经理交流过, 大部分工作超过6年的人, 在测试执行上会倦怠, 在测试技术的改进上已经无法入门, 还不如招实习生。

相对来说, 有技术基础的人在工作8年以上仍然会保持自己的学习热情。

所以未来测试团队的架构基本会是多数业务测试工程师+少数测试专家+测试经理的管理模式。

7、测试行业的门槛增加

以前处于发展期, 行业对人才的苛求是第一位的。 现在随着大公司发展稳定, 招人已经稳定了。

他们基本只在211院校校招。 社招也看学历。 初创公司多是融资烧钱为主, 在学历上和阅历上也是看的很高。 能够不拘一格降人才的公司会越来越少。

我之前推荐了不少同学去其他优秀的公司, 其中有一部分同学就是技术不错, 但是学历未过关。 所以希望大家技能和学历上能够好好的重视这个问题。

除了学历门槛, 如上一条所说技术门槛也存在。 所以加油吧, 少年!

8、测试行业的薪资在提高

测试行业经过自身的净化洗涤会有新生。 典型的变化就是薪资从以前的3k-15k的范围, 整体提升到1w-3w之间。

技术含量的提升, 责任的提升必然会带来整体的回报。 现在只要技术好, 学历没问题。 工作3年拿个两三万的月薪是很平常的。

后面会详细说薪资的方面。

9、研发工程师进入测试领域

这些年整个行业对测试行业的发展非常不满意, 通俗点讲, 大家都觉得测试很Low, 但是又不能没有。

研发提交项目给测试的心情就跟以前过年要去火车站排队买票一样。 要申请测试资源, 给测试讲解业务和实现, 遇到比较low的或者新入职的, 连搭建环境都不会还得手把手教。

研发只是修改一行代码, QA或者测试那边就炸锅了。各种流程足以让研发头发都能掉好几根。

作为参考对比, 再思考下运维。 当年部署个环境跟提交测试很像。 要申请运维的介入, 要申请机器资源, 然后提交部署文档, 还要明确基础环境, 依赖库等各种细节的版本号。遇到本地行发布环境不行之类的问题,还得跟运维撕逼。

而现在随着持续交付和devops的流行。 发布都已经做到"丝般柔滑"了, 一键发布,自由选择灰度,平时的发布甚至都不需要运维参与。

尝试了新模式的甜头后, 对测试行业的弊端已经很难忍受了。

所以在优秀的测试工程师和架构师难找的情况下, 已经有越来越多的公司选择直接用研发工程师来顶了。

他们的追求很简单。 单测->接口测试->基础的冒烟测试, 能够做到自动化就可以了。 如果能像运维那样做成测试即服务就更完美了。

有人会问博主上面说怎么多,那零基础小白怎么入行软件测试呢?

我用了五天的时候整理了今年我认为软件测试就业的主流技术栈大纲,由于内容实在太多,我就能弄成了一张长图

学习建议

1、一般来说,测试新人的话首先需要把基础打好,测试理论基础可以通过看一些经典书籍或网上也有很多免费的资源,选择前两本基础的看,你会受益匪浅。

2、刚开始不太建议加入过多技术群或其他论坛提问,初期遇到问题可以自己搜索自己尝试解决,当然需要控制一个止损点,不要为一个问题耗费太长时间

3、自学基础的同时一定要做好笔记,且一定是通过自己的理解后做的。可以使用思维导图把前后学到的东西给关联起来

4、读完一本书或一个阶段结束后,可以自测一下,通过找一些经典的笔试题或一些istqb中的题目,来巩固或查漏补缺,有针对性的再次巩固学过的东西

 5、接下来可以找一些项目来做或去众测平台看一些基本的项目测试流程,包括基本测试文档的书写规范等等,testin众测平台是一个锻炼的不错平台,至少测试用例设计、执行及bug探索提交缺陷都是挺好的。

 6、目前有好多平台会开设一些免费的公开课,通过技术讨论组可以接收消息推送,设定好时间听一些专业领域的测试方法,可以快速了解到大体的流程。(一定要经过严格筛选,选择质量高的,否则会浪费一大部分时间)

第一阶段 测试基础
测试基础是软件测试最最最重要的部分,只要你是做测试,不管是什么测试,测试的基础、理论知识都是必须学会的。
最好学到什么程度呢,最好是能够理解,并能够用自己的话给复述出来。
毕竟面试初级测试的时候,问的问题都是从基础理论上进行考核的。
那测试基础有哪些内容呢?

测试的定义、测试的分类、测试的方法、测试的生命周期。
测试计划、测试方案、测试策略、测试用例的编写。
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注入
暴力破解
脱库
等等
其实安全测试基本上偏向于网络攻防了,也就是传说中的黑客了,不过我们都是好人,这个的发展方向就是白帽子。
推荐知道创宇的学习体系。
我估计你看到这里就更懵逼了。
没关系、等你把基础的东西学会就知道我在说啥了。
毕竟你现在还是一个小白嘛。
不要去纠结这种小事。

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

第四阶段 架构学习

前三个阶段学习完成后,各位就应该考虑怎么写代码更合理了。
怎么去测试更全面。
怎么才能更好的保障项目的质量。
我认为,在这个阶段,应该回头重新学习一遍测试基础。
因为这个阶段的提高是思想、方法的提高了。
上面讲的都是教你应该怎么做。
在这个阶段你要自己去发现、为什么要那样做。
跨过了这个阶段就基本上可以成为专家了。
学习都是水到渠成的,在这个时候,你应该已经掌握了不少框架了,甚至自己也能开发合适的框架了。
自动化测试框架、性能测试框架等等。
已经有了属于自己的一套东西了。
在群里或者论坛上去装逼、别人都会尊称你一声大佬了。
可能你也学会了一些其他的技术了,甚至在往全栈等方向跨进了。
总之,到了这个阶段就没什么学习路线了。

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

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

 

视频文档获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方进群即可自行领取。     

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

PM2学习

目录 PM2简介 pm2的主要特性 PM2安装 启动PM2项目 查看应用列表(查看当前机器执行的所有进程) 查看某个应用详情 重启 停止 删除 日志查看 负载均衡 监控CPU/内存 内存使用超过上限自动重启 监听代码变化/自动重启 PM2简介 PM2是常用的node…

2023年【道路运输企业主要负责人】考试技巧及道路运输企业主要负责人复审模拟考试

题库来源:安全生产模拟考试一点通公众号小程序 道路运输企业主要负责人考试技巧是安全生产模拟考试一点通总题库中生成的一套道路运输企业主要负责人复审模拟考试,安全生产模拟考试一点通上道路运输企业主要负责人作业手机同步练习。2023年【道路运输企…

Redis应用场景及常见的数据类型

目录 一、Redis应用场景 1.1 Redis作为缓存 1.2 Redis作为消息队列 1.3 实现计数器和排行榜 1.4 实现分布式锁及分布式会话管理 二、Redis常见的数据类型 2.1 String(字符串)类型 2.2 list类型 2.3 Hash类型 2.4 Set类型 2.5 Sorted Set 一、Redis应用场…

什么是3D建模中的“高模”和“低模”?

3D建模中什么是高多边形和低多边形? 高多边形建模和低多边形建模之间的主要区别正如其名称所暗示的那样:您是否在模型中使用大量多边形或少量多边形。 然而,在决定每个模型的细节和多边形级别时,还需要考虑其他事项。最值得注意的…

安装宝塔,使用宝塔自动部署

这里用的是华为云服务器,其实也就是普普通通的一个linux操作系统 首先我们来到宝塔官网地址 宝塔面板下载,免费全能的服务器运维软件 (bt.cn) 翻到下面,会有使用脚本安装的命令。 yum install -y wget && wget -O install.sh https:/…

【C++面向对象】10. 多态

文章目录 【 前言 】【 虚函数 】【 纯虚函数 】 【 前言 】 多态按字面的意思就是多种形态。当 类之间存在层次结构,并且类之间是通过继承关联时 ,就会用到多态。 C 多态意味着调用成员函数时,会根据调用函数的对象的类型来执行不同的函数…

msvcp140_CODECVT_IDS.dll丢失怎么办,分享两个有效的方法

在计算机使用的过程中,我们经常会遇到一些错误提示,其中最常见的就是“缺少xxx.dll文件”。这些文件是动态链接库(DLL)文件,它们包含了程序运行所需的函数和资源。而msvcp140_CODECVT_IDS.dll就是其中之一。那么&#…

动态规划专题——背包问题

🧑‍💻 文章作者:Iareges 🔗 博客主页:https://blog.csdn.net/raelum ⚠️ 转载请注明出处 目录 前言一、01背包1.1 使用滚动数组优化 二、完全背包2.1 使用滚动数组优化 三、多重背包3.1 使用二进制优化 四、分组背包…

抽象 I/O设备模型

I/O设备模型框架 RT-Thread提供了一套简单的I/O设备模型框架。 如图所示,它位于硬件和应用程序之间,共分成三层,从上到下分别是I/O设备管理层、设备驱动框架层、设备驱动层。 应用程序通过I/O设备管理接口获得正确的设备驱动,然…

一题带你写出图论算法模板!!!

这题是道基础的图论算法题目 注释很重要!!!!!!! 在做这道题之前,我们先了解一下基础的图论算法吧!!! 1.floyd: 这样可以求出所有点…

闲聊从零开发一个2D数字人流程实战

.2D数字人技术 百度,腾讯,等大厂都有自己的数字平台制作(套壳:api后台转发vue前端),国外也有出名的heygen(非常厉害一个)通过开源项目组合实现,再打通每个项目已api的形…

LCD1602命令代码整合

本文为博主 日月同辉,与我共生,csdn原创首发。希望看完后能对你有所帮助,不足之处请指正!一起交流学习,共同进步! > 发布人:日月同辉,与我共生_单片机-CSDN博客 > 欢迎你为独创博主日月同…

C语言查看main函数的参数

这里写自定义目录标题 argc 代表参数的个数argv 代表参数的具体值,其中argv[0]代表的是可执行文件的名字,参考上图

微信这4个功能容易暴露隐私,记得关闭

每天高频使用微信的我们,常常觉得安全无忧,然而这样的想法并不准确。尽管微信本身的安全性能极高,但若我们不主动设置相关功能,个人隐私和位置信息仍可能被暴露。 在微信朋友圈上,有些人喜欢分享生活的点滴&#xff0c…

爆款标题怎么出来的?媒介盒子揭秘产出技巧

用户点开一篇文案的主要因素取决于标题是否具有吸引力,直观判断可能只需要半秒钟,用户的操作也决定了文章的点击率与阅读完成率。 然而有许多人为了取标题想破脑袋也想不出来,甚至文案内容出来了标题还没出来,今天媒介盒子就来为…

Java GUI小程序之图片浏览器

以下是一个简单的图片浏览器示例代码,它包含了图片放大缩小、拖拽、上一张/下一张查看等功能。你可以根据它进行扩展,提高用户体验。 import java.awt.BorderLayout; import java.awt.Dimension; import java.awt.event.ActionEvent; import java.awt.e…

土木非科班转码测开,斩获10家大厂offer

大家好,我是洋子 24届秋招基本已经落下了帷幕,各大互联网大厂基本也开奖完毕,还没有拿到满意offer的同学也不要灰心,积极备战明年的春招。另外,25届想要找暑期实习的同学也可以开始准备起来了,基本大厂在春…

UI自动化测试(弹出框,多窗口)

一、弹出框实战 1、在UI自动化测试中经常会遇到Alert弹出框的场景。Alert类是对话框的处理,主要是对alert警告框。confirm确认框,promp消息对话框。 text():获取alert的文本 dismiss ():点击取消 accept():接受 send-keys():输入 from selenium import …

split loop

// refactoringmotherfucker.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。 //#include <iostream> #include <vector> #include <memory>// before refactoring of split loop class People { public:People(double _age,double _…

<C++> 优先级队列

目录 前言 一、priority_queue的使用 1. 成员函数 2. 例题 二、仿函数 三、模拟实现 1. 迭代器区间构造函数 && AdjustDown 2. pop 3. push && AdjustUp 4. top 5. size 6. empty 四、完整实现 总结 前言 优先级队列以及前面的双端队列基本上已经脱离了队列定…