当前位置:网站首页>8年测试工程师总结出来的《测试核心价值》与《0基础转行软件测试超全学习指南》
8年测试工程师总结出来的《测试核心价值》与《0基础转行软件测试超全学习指南》
2022-07-03 09:41:00 【入坑玩家】
我现在是一名有8年经验的测试工程师了,测试人员的价值是什么?我一直在思考。这个问题是在从业的第五年,也就是去年才逐渐清晰明朗起来。
测试的核心价值,我认为是持续地进行技术调查,尽可能快而全面地提供质量反馈。拆成几个关键词:“持续”,“技术调查”,“尽可能快而全面”,“质量反馈”。
“持续”意味着测试是一个迭代的过程。把某一个版本分支测试好了,大多没什么难度,问题在于做长远打算,做好测试数据和用例管理,还有自动化脚本,性能和安全测试方面的规划。必要时,测试人员需要承担过程改进的角色。
“技术调查”,是我对测试过程的一种类比。因为是调查,所以应该自发地收集信息,早期介入。因为是技术岗位,所以不会抗拒学习代码,不会害怕与开发做技术讨论。会时常更新自己的测试技术和工具箱,时常提醒自己,不断用知识来武装自己。
“尽可能快而全面”,意思是测试人员不可能发现百分之百的问题,难免会有一些考虑不周和遗漏的情况;再加上时间有限,如何提高测试效率,也是我们需要反复学习思考的问题。测试与开发技术一样,也有专业的工具和框架;测试与产品设计一样,也需要用户思维,深入了解业务。如果能兼具“开发”和“产品”之长,那么离“快而全面”的测试目标就越近。
“质量反馈”,意思是测试人员主要产出是质量反馈。发现了Bug,要不要修,什么时候修,这不是测试人员来决定的。质量是需要整个产品团队一起构建起来的,不是测试测出来的。质量好,不会只有测试的功劳;质量糟糕,也不会只有测试人员出了问题。
以上这些表述,我不知道会引起多少同行的共鸣。每一点的背后都可以讲出很多故事。
0基础如何转行软件测试?
这应该是所有新人都会面临的问题,所以我结合自己的经历,做了一些总结和学习方法,希望能对大家有所帮助。
下面是我总结出来的五个部分
第一步:认知准备
在开始学习之前,首先一定要明确的是对于行业和学习的认知:
- 对于应届生来说,能去大公司就不要去小公司,不要相信小公司更锻炼人的鬼话;
- 不要为了降低难度而草率进入外包,我们内推的时候,大厂的测试经理看到有外包经历的都是一概不要;
- 进入测试行业一定要学习一门语言,认为做测试不用写代码或者对于写代码比较排斥的,可以绕道了;
- 技术才是你立足的根本,但是不要认为技术做到最强,就可以得到100%的尊重;
- 在不断学习的同时也要积极地参与行业内的交流,比如沙龙、讲座等,朋友内推比海投简历靠谱的多;
- 学历很重要,项目经验很致命,英语是加分项;
- 学习是长反馈、反人性的,不要期待短期速成,不要相信35岁失业的鬼话;
- 沟通能力是和技术同样重要的,放在任何行业都是如此;
第二步:具体学习路线准备
一定要有自己的学习方向,目标是要做到 T 字型人才,保证广度的时候也一定要有一两项专精,这样才能够在面试时候脱颖而出。
我按照薪资的不同大致划分成2个档位:
- 月薪5-9k:从零基础入门到能够找到工作
- 月薪15-25k:测试在职搞定性能测试和自动化测试
第一阶段:月薪5-9k,刚刚入行,先学会功能测试!
对于零基础的新人来说,肯定要先学习基本理论知识,有一定的计算机基础和软件测试基础之后,再做需求分析和用例分析,所以这一个阶段重在打基础和写测试用例
学习目标:掌握基本的测试理论、各种测试文档的编写和管理、数据库的操作、满足大部分企业的需求
软件测试的定义、生命周期、工作流程、需求分析;
测试用例的设计、编写、评审;
bug的基本知识以及禅道的使用;
测试计划、测试报告的编写;
SVN、Git版本控制工具的使用;
搞定上上面的这些基本必备内容,就已经知道可以做具体的实战内容,这个时候最好是先找一个web测试项目去做一下,假如一个项目拿到手之后,按照下面的一套流程跑一遍:
发布项目进行立项,建立项目组进行分工;
需求评审,学会如何看需求文档,进行需求分析,罗列测试点;
整理测试点,编写测试用例,然后进行用例评审;
执行测试,比如功能、界面、前后台、兼容性、数据库,对于发现的bug提交到禅道;
分析、总结、编写测试报告;
这个流程完整的跑一遍之后,只能说对于整体的测试流程算是掌握了,但是仍然不足以找到一份合适的工作,想要学会做功能测试,以下的内容也是必须掌握的:
Linux相关技能
操作环境、命令、安装数据库、部署测试环境等
数据库相关技能
各种命令用法、字段、增删改查
接口测试相关技能
接口测试基本理论、http协议、测试方法;
接口测试需求分析、用例编写、评审;
几种工具的掌握,jmeter、postman、soupUI;
APP测试相关技能
安装/卸载、离线、UI、登录等测试内容;
兼容性测试、monkey、fiddler抓包;
OK,搞定了这些,恭喜你已经可以投出你的简历去寻找一份测试的工作了!
以上全部都是理论和文档能力、只要你肯背、肯写,都是能独立的掌握的。
会了以上这些内容,只能说是能够获得一份工作,但是现在行业招人的要求原来越高,搞定自动化或者性能测试,才能拿到10k以上的月薪。以上全部都是理论和文档能力、只要你肯背、肯写,都是能独立的掌握的。
第二阶段:月薪15-25k,搞定性能、自动化测试,独当一面!(我目前也是在这个阶段不过是属于经验比较浅的那一批,所以才20k)
先说性能测试,行业内是有很多误区和痛点的:
- 只测不调,无法给出研发和运维人员执行建议
- 无法定位问题,缺乏清晰的逻辑和数据证明价值
- 性能测试工具≠性能测试
- 性能测试技术体系落后(loadrunner),急需拥抱开源软件
如果要搞定这些问题,那么性能测试你得这么去学:
性能测试的概念和流程: 常见问题剖析、流行工具、方案设计
性能测试工具: jmeter工具的使用、实战;jmeter多协议、拓展与定制;分布式压测与任务调度;
性能监控: 性能监控体系与监控数据采集
性能实施: 分布式服务压测,场景设计、场景执行;测试结果关联分析,TPS、响应时间、线程关联分析,压力和资源使用率关联分析
性能分析与报告: jvm调试与系统调试;性能瓶颈分析
性能测试你能到这个程度,15k那是妥妥的了,如果下面自动化测试的学习内容你能够掌握,那就可以直接冲击月薪25k!
搞定Python或者Java语言,建议先从Python入手,先学习Python的基本语法等。
web端的自动化测试: selenium安装、录制、处理;web控件、JavaScript脚本、PO模式;
移动端APP自动化测试: appium使用、录制、元素定位方法;APP控件定位、交互,参数化用例;appium问题定位分析、源码分析、二次封装;
服务端接口自动化测试: 接口自动化测试框架request;接口请求构造、断言;json/xml请求、响应断言;headcookie处理、认证体系;
第三步: 社群互动,拓宽圈子
我会利用自己的剩余时间,去参与到一些社群里,与同行交流,向大佬们学习,毕竟站在大佬的经验上是最快的学习方式。只要每天学习一点,坚持下来会发现其实软件测试非常容易!!
第四步: 选好学习资料
- 通过B站搜索相关的视频进行学习,不过建议找有经验的帮你把把关。
- 一些其他的免费视频,可以通过腾讯课堂上搜索软件测试的一些课程,有一些免费的公开课。
- 到一些比较有名的测试论坛、公众号上搜索相关的资料看,比如51testing、testerhome、公众号程序员一凡等。
- 纯干货分享,我之前学习收集的测试资源,已经分类。如果不想自己去整理目前还不清楚学习方向的,可以关注楼底公️号卡片️️️️️程序员一凡里面会有美团架构师传授的一套教学资源和相关文档资源提供给大家学习。
第五步:面试方面
我做的就是:刷面经,然后总结都问到了哪些问题,然后记住,就是计算机基础知识,网络方面的问题,容易考的,背下来代码题,由于我的基础比较差,我理解思路,然后背代码题
建议大家不论是什么样的大小面试,要想不被面试官虐的不要不要的,只有刷爆面试题做好全面的准备,当然除了这个还需要在平时把自己的基础打扎实,这样不论面试官怎么样一个知识点里往死里凿,你也能应付如流
结合阅读文章出来的实践经验,总结整理了一套面试资料,内容涵盖以下我提到的内容。准备分享给有志于从事软件测试的同学。
这样有什么好处呢,好处就是很多题在你不知不觉中就掌握的很熟练,无论是概念还是原理,基础越来越扎实,学东西越来越快,重要的是面试效果越来越好,导致你的offer,越来越大,又会导致你的自信心越来越好,最重要的是会导致你的学习兴趣越来越强,这时候你会想着法子去学习,去提升自己。因为尝到学习带来的甜头了,这就是一连串的正向反馈。
需要的朋友可以在这里打包获取,关注楼底公️号卡片️️️️️程序员一凡具体内容自行查看!
最后
这个顺序进行学习,理解的非常好,不能走马观花,一定要用心学习,必能学有所获,给自己打气~~~坚持就是胜利
边栏推荐
猜你喜欢
DAY 7 小练习
【蓝桥杯选拔赛真题44】Scratch消灭骷髅军团 少儿编程scratch蓝桥杯选拔赛真题讲解
MySQL checks for automatic updates at 0:00 every day
Is it OK to test the zero basis software?
QT: QSS custom qtabwidget and qtabbar instances
QT:QSS自定义 QScrollBar实例
使用ML.NET+ONNX预训练模型整活B站经典《华强买瓜》
MAUI Developer Day in GCR
正常一英寸25.4厘米,在影像领域是16厘米
T5 的尝试
随机推荐
QT:QSS自定义QLineEdit实例
Leaders always entrust the work to flattering employees
QT:QSS自定义 QMenuBar实例
Pytoch has been installed, but vs code still displays no module named 'torch‘
Numpy quick start (I) -- pre knowledge (create array + constant + data type)
2021-09-22
How to make a blood bar in the game
Jupiter notebook changing font style and font size
[SQL] an article takes you to master the operations related to query and modification of SQL database
MySql 怎么查出符合条件的最新的数据行?
Data captured
extern关键字
8年测试总监的行业思考,看完后测试思维认知更深刻
Mysql5.7 installation and configuration tutorial (Graphic ultra detailed version)
QT:QSS自定义 QStatusBar实例
Qt:qss custom qpprogressbar instance
QT:QSS自定义 QSplitter实例
The story of a 30-year-old tester struggling, even lying flat is extravagant
QT:QSS自定义QHeaderView实例
Uni app learning 1 bottom menu and parent-child components