先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7
深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新软件测试全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上软件测试知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
如果你需要这些资料,可以添加V获取:vip1024b (备注软件测试)
正文
原因说起来其实并不复杂,稍加思考就能理解。去测试化的理论源头基本来自一些美企(主要参考的是 Google,但如果去研究 Google Testing Blog,对方其实也没说不要测试…),要说美企的一些管理理念的确挺前沿,但是仔细对比 BAT 的情况就不难发现,有三个因素决定这些模式在国内很难行的通:文化环境、行业水平、数字化基础。
先说文化环境。相对于国外企业更相信流程,国内企业则更(被迫)相信老板。前者是集体决策机制(自下而上),后者是中心决策机制(自上而下)。有句玩笑话说,外企的工作是为了 Do right things,国企的工作是为了 Do things that boss think is right。软件工程本来就是个复杂的专业问题,不是靠行政命令就能够解决的。
实例来讲吧,就说 Google,比如大家熟悉的 Chrome,版本更新也不慢,但是你看它的产品有很大改变吗?相信不少人读过《Google 测试之道》,知道他的发布过程是有着完善的分级灰度控制的。再强的团队也避免不了问题,但人家有足够的耐心去打磨。而且 Google 也没有把测试的事情拿掉,而是做了进一步分化,对工程和体验都有更强的专注力。
比较有意思的是微软,他可以说是测试行当的祖师爷,前几年也有模有样地宣称要去测试化。当然这里面也是有些逻辑的,Windows 的发布方式已经有很大变化,以前卖的是实体光盘,现在基本是数字化交付,所以 Windows 也玩起了灰度测试那一套。结果 Win10 的各种问题被骂出翔,矛头直指微软裁掉测试的传言,逼得微软辟谣还留着上百人的测试团队,可见 Google 模式也没那么好复制。
至于国内的情况不多说大伙也知道,产品研发的基本调性就是抓紧时机搞一波热钱,产品好不好不重要,能不能 IPO 才重要。 所以感觉多数老板都很焦虑,今天提的想法,明天就得落地。能不能带来效果不知道,这个想法不行明天就再换一个,总有一个是行的吧?产品特性换得比自己的衣服都快。
如果说人月神话的比喻是说:一个孕妇生孩子要十个月,两个孕妇就只要五个月。那么国内的普遍情况就是:一个孕妇生个孩子只给三个月,怎么实现管不着,反正就是一定要。老板不在乎什么软件工程、质量控制,只关心他的需求要等多久。想想为什么他们不懂什么是黑盒白盒,自动化这个词倒是记得很清楚。靠灰度慢慢做产品?不存在。只要能快点发布,堆测试才是最香的。
再说行业水平。某名厂也搞过去测试化,硬是给推行下去了。至于效果嘛,老板怎么看的不知道,底层群众问一圈就清楚了,反正后来不少团队又悄无声息地给招了回来(有的是测试转开发,披层外衣接着干)。如果一定要说没测试又怎么样?确实也没怎么样,能保证服务基本不挂,但是细节上就真的一言难尽。少数纯服务端的业务也许可以,前端交互很重的业务这么搞就是自掘坟墓。
这类隐患的爆发只是个时间问题,业务高速扩张的时候还能无视,等到了瓶颈期就发现已经积重难返。之前我在“第三代测试的思考”说过,现在是个存量竞争时代,国内消费者早就被教育得很挑剔,你的产品细节不行,被抛弃是很快的事,这点现在也已经得到证实。也许有读者要问,你说的体验也就是近两年(后疫情时代)的事,之前我们还在高速增长的时候,去测试化怎么就不行?你不也说没怎么样吗?
前面打过一点伏笔,去测试化是个底层逻辑问题,不是靠中心决策硬推就能行的。Google 的推行模式是由测试团队发起,一个个部门去沟通,让大家愿意相信你,愿意一起去努力,再经过漫长的实践和优化,才达到今天的程度。即便是我们都想改变,也不是立即就能变的。具体一点:产品和开发的质量理念要不要培训?符合新要求的测试要不要招聘?配套的基础设施要不要建设?
去测试化的内涵是思维升级,不是把人裁掉就完事了。前面提到的某名厂例子,上层的想法是我要学习先进,下层又理解不了你要的是什么先进,结果就是逼得开发去做原本测试做的事情,工作方式和内容并没有多少改变。表面看起来是完成了去测试,但总成本反而在增加,落地效果还不好。我们的行业水平还没成熟到可以支撑这种模式。更夸张的是,前面大厂都玩脱了,后面居然还有小厂跟风。
其实要论 BAT 三家公司,我最欣赏的还是阿里。从产品的调性上看,阿里还是比较“热爱技术”的,也实实在在做了很多科技改变生活的事情,相比之下腾讯的娱乐基因和百度的医疗广告总是有点不太正能量。但是阿里也不能免俗的一点是,对产品打磨缺乏足够耐心,一些有前景的产品没能等到它见证奇迹的那一天。阿里云刚搞的时候多少人反对?不坚持哪里会是今天的结果,祝福阿里将来能够走得更远吧。
然后说数字化基础。不知道是否有人注意过一个消息:21 年底印发的《“十四五”国家信息化规划》提到“十四五”时期要加快数字化发展,建设数字中国的新阶段。为什么要搞数字化?因为要提升效率,效率就是成本。照理说这是企业关心的事情,国家为什么亲自站台?因为要产业升级,提升国际竞争力。我们不可能永远做鞋子帽子,人民想要过上好日子,就得往产业上游走。
国内的数字化发展非常不均衡,意思就是大部分企业的办公方式还是靠手、靠吼,有个微信群就差不多了。比如在线协同办公,要说我们已经有钉钉、企微、飞书等这么多产品,为什么他们不用?因为潜意识里就不觉得这些东西有用。中小企业的眼睛普遍还是盯在怎么增加收入上,协同效率的提升能不能体现在财务报表里?不知道。所以协同软件有个怪现象是,很多客户卖得出去,就是用不起来。
上面说的这些和测试似乎没什么关系?当然有。前面说的协同软件能卖不能用的现象,代表很多企业对这方面其实还是有一定尝试欲望的,毕竟大环境和大趋势摆在这里。但是他们对数字化的理解又几乎是空白。这带来了什么后果?软件的前期交付、后期维护都极其痛苦,客户可不管你什么产品理念、技术架构,只要不能让他快速理解的,统统都是缺陷。
举个我实际遇到的例子,有位客户部署之后的几个月内一直很稳定,有天突然向我们反馈系统故障,排查了老半天发现是对方运维升级了网关,没给我们的产品域名开白名单。你再委屈也没用,客户一定要服务,这种情况下测试几乎是全程贴身重保。况且企业采购之前基本都要你出具各种测试报告,你要是跟客户说我们先进团队没有测试,客户会说不好意思我不要你的产品。
还有一个事实是,这类测试需求都偏低端,不同客户之间 80% 的测试内容是重复的,就是不停地回归。剩下的 20% 那可是金主爸爸的定制化需求,而且以大多数产品的架构现状,这些定制能改到连那 80% 的代码都变得不稳定,你还不敢不全量回归。我曾经问过一位 P10 前辈对测试职业是怎么看的,答曰:很多企业对软件问题的自主判断和解决能力是缺失的,所以测试的存在也就成为一种必然。
如果你以为今天我要表达的是:哪怕你只是个点工也不要担心,因为还有大把低端岗位等着你?当然不是。我们的数字化转型可不只是随便说说,而是以一定速度在推进,信息产业更是首当其冲。上面我列举的几个影响因素,尽管较为缓慢,也在持续淡化,具体对测试的影响会是什么?
不是说测试整个群体会消失,而是一个尾部淘汰的过程。上面画了一个示意图,虽然从业人员的能力分布一直会是个波形,然而这个波在持续往右推进,如果个体水平没有变化,就意味着生存空间会被不断挤占,直至消失在尾部。假设你现在在中位线,这个时间我估计大约是 10 年。其实也不绝对,因为总会有些变量出现,比如大家都关心的 ChatGPT。
这么说可能没有概念,我举个例子。有了电子计算器之后,算盘基本就没用了,但会计职业不会消失,失业的是学不会(或不想学)电子计算器的会计。而且这是有个过程的,不是说“啪”得一声尾部群体齐刷刷的原地失业。他们先去用不起电子计算器的地方,等这些地方也普及了,再去更边远的小镇或乡村。放在测试职业身上,这个淘汰链大概就是:大厂->中小厂->外包。也许不是很严谨,就是这么个意思。
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注软件测试)
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!