时间回到8年前,我人生中的第一份实习工作,是在某互联网公司做一个自动化测试工程师。当时的我可谓意气风发,想要大干一场,结果第一次做测试就出现了事故。由于对某些地方的不了解,把某一个地方侧漏了,并且上完线就去吃晚饭了,等吃饭回来发现师傅在焦头烂额地忙来忙去。那次故障造成了一个某项服务20分钟不可用,对公司造成了不小的影响。
对于软件测试从业者来说,提起自动化测试,最近两年任何一个招聘渠道对于测试岗位的要求,几乎都要求其会自动化测试。
如果你在软件测试行业有许多的不解的困惑,那么欢迎和我一起在业内的交流群里面沟通探讨。群里面有免费的教程资料以及各阶段测试资源,希望能帮助你突破眼前的瓶颈
这仅仅是一个开始,在后来半年的时间里,我几乎把所有职场新人可能犯的错误都犯了个遍。架构师让我把最新开发出来的软件测试完,我闷头搞了两周,也没有得出任何结论;本来安排好的开发计划,由于我临时要回去写论文,搞得经理措手不及;参加项目座谈会,全程“打酱油”……那段时间,自己也很苦恼,几乎每天晚上11点多才走,很累很辛苦,但依然拿不到想要的结果。
8年过去了,自己从一个职场小白逐步成长为一名技术Leader。我发现团队中的很多同学在不停地重复犯着自己当年类似的错误。他们并不是不努力,到底是哪里出了问题?经过一段时间的观察与思考后,我想我找到了答案。那就是:我们大多数同学在工作中缺乏原则的指导。原则,犹如指引行动的“灯塔”,它连接着我们的价值观与行动。不久前,桥水基金创始人雷·达里奥在《原则》一书中所传达的理念,引爆了朋友圈。每个人都应该有自己的原则,当我们需要作出选择时,一定要坚持以原则为中心。但是在现实生活中,我们往往缺少对原则的总结,对于很多人来说这是一门“只可意会不可言传”的玄学,是属于老司机的秘密,其实不然。“追求卓越”是美团的价值观。作为一名技术人员,我们应该如何践行呢?下面希望能够给大家带来一些启发,更好地指导我们的行动。
要想顺利实现职场转型,应该如何做,才能提高成功率,并且不给以后挖坑呢?以下是3点建议:
1、清晰的职业规划和发展目标
清晰的目标是求职的第一步,也是用人单位比较关注的求职因素。现在用人单位都喜欢有目标、有想法、有能力的年轻人。没有目标、没有想法、没有能力的“三无”人员,随波逐流,如何让用人单位看到你的发展潜力呢?你要想让别人录用你,至少得看到你身上有吸引人的地方。假如你是一个三无人员,恐怕你只能找到含金量最低的岗位。
对于年轻人来说,用人单位对你的期待,不是你有多强的能力(因为你根本就不具备,所有的新人都不具备),而是你身上的可培养潜力。你得有目标,有动力。
同时,从求职的角度来说,没有目标,你就会海投简历。而海投简历的结果,往往是石沉大海,求职的效率很低。
同时,没有目标,你在职场上的发展就很被动。一旦这个职位机会不合适,以后还得跳槽。这样你走弯路的成本损失就会很大。
如何从长远角度思考自己的职业方向?核心关键的问题,就是要找准自身的优势,扬长避短。同时,发挥你优势的工作,才能够带给你更多的驱动力及正向反馈。
2、进行充分的职前知识储备
虽然用人单位不关注知识技能,但你也不能空手套白狼,一定的知识储备还是必要的。如果你嘴上说对xx职位很感兴趣,可是,你如何向对方证明你的诚意呢?你什么准备都没有,如何让别人信任你呢?而最好的证明自己的方法,就是进行充分的知识储备。我们的所有客户,但凡涉及到转行的,知识储备这个环节都是重头戏,需要花费1-3个月左右的时间来进行。
注意:知识储备一定是提前进行的,不能说你都开始投简历找工作了,才进行知识储备。
3、围绕求职目标,优化你的简历,并进行充分的面试准备。
在上述3个环节中,是有前后顺序的,一环套一环,少了哪一个环节都不行。你已经耽误一年了,已经开始陷入被动的状态当中了。接下来的职业方向,你能否找对,决定了你未来5-10年的职业走势。职场如棋局,一步错,步步错。这一步走错了,要花三步的精力去弥补错误。
下面分享我整理的这份2023年可能是最全的软件测试工程师发展方向知识架构体系图。
计算机基础:操作系统,进制转换,逻辑代数,计算机网络基础
软件生命周期,开发模型,测试模型
软件测试概念,术语,目的,意义,前景
软件测试方法及分类(白盒测试,黑盒测试,单元测试。集成测试,系统测试,回归测试,验收测试,负载测试,压力测试,易用性测试,兼容性测试,UI测试。文档测试),热门领域测试技巧
需求分析,测试计划,测试用例设计与编写(等价类,边界值,因果图,判定表法,正交实验法,错误推算法,场景法),缺陷管理及缺陷报告,测试报告
测试用例编写,缺陷编写集中演练
LInux系统和Windows系统搭建环境的区别
Linux基本命令,高级命令的使用
LInux操作系统下的服务器环境搭建
Linux环境下编辑软件的使用
Linux远程终端工具的使用
Linux系统Shel脚本基础
数据库的定义及基本概念,关系型数据库,Navicat工具
MySQL: MySQL的安装与配置,用户及连接方式,数据表操作,数据操作-增删改查,条件查询,排序,聚合函数,分组,分页,连接查询,自关联,子查询,数据库设计,命令行操作数据库,函数,存储过程。视图,事务,索引,外键
Oracle: Oracle的基本介绍,Oracle安装及简单操作,SQLplus集成工具安装及使用,SQL常用语句
企业中标准则试流程,程序中的前后台数据交互
软件测试管理工具: SVN、禅道、QC\ALM、Jira
搭建功能测试实战环境
Linux环境下B/S结构产品测试项目
Python: Python语言特点,运行环境搭建,Pycharm,变量的定义,输入输出,元组,列表,字
典,运算符的使用,分支结构,循环结构,函数,文件操作,面向对象编程思想,正则表达式,异常和调试,编程规范
自动化测试分类及自动化适用的项目、自动化测试框架选型,自动化测试行业现状,发展前景,需要掌握的技能
Selenium的发展历史及工作原理,SeleniumIDE插件的使用,Firebug插件 I具及使用,元素基础定位Xpath、CSS元素定位方式,元素操作,浏览器的操作方法,鼠标操作,键盘操作,元素等待,HTML特殊元素处理,窗口截图,自动化测试模型,UnitTest框架,UnitTest断言, 生成HTML测试报告,测试报告自动发送邮件
搭建B/S架构的电商网站,使用Selenium对网站的核心功能进行自动化测试,包括元素定位、鼠标键盘的模拟操作及自动化测试框架的使用等
手机自动化测试环境搭建,真机和模拟器的测试,独立功能+业务场景脚本,手机自动化测试框架
Appium设计及实现,系统资源监控和日志分析,手机测试常见问题和用例分析
Monkey简介及安装,Monkey参 数,Monkey事件,Monkey自动化脚本,Monkey日 志管理
搭建APP测试环境,使用Appium对APP核心功能进行测试验证,包括ID、xpath、 list元素定位,数据交互、模块封装以及自动化测试框架的使用,生成测试报告,对APP功能进行评估。
Jmeter接口测试和接口自动化测试从入门到精通,全套项目实战!!!
接口测试基础,接口测试流程,接口测试方法,接口测试工具
计算机网络知识,Postman安装、使用,接口手动测试,Fiddler安装、 使用,Web和手机抓包,基本设置方法
Jmeter安装、基本使用,BadBoy录制脚本,测试计划分析、Vuser及场景设计(线程、组、调度器),Jmeter关联技术,Jmeter参 数化,Jmeter调 试和应用
Jmeter的常用组件:线程组、取样器、配置元件、处理器、控制器、定时器、断言、监听器
搭建接口测试环境,分析业务流程,设计测试用例,使用Jmeter执行测试用例,对页面跳转,参数传递等功能进验证
Web安全核心理论、Web漏洞及防御、渗透测试、SQL注入、XSS跨站脚本、AppScan
性能测试理论、性能测试分类、性能测试常用指标、工具选择、LoadRunner安装与注册、性能测试步骤性能测试术语、类C语言
VuGen:协议、参数化、集合点、事务、检查点、思考时间、关联、文件下载、浏览器模拟设置
Controller:手动场景设计、场景运行、IP Wizard应用、负载生成器、服务水平协议(SLA)、场景监控、服务器硬件监测工具
Analysis : HTTP报文结构、执行结果分析、图表分析、网页细分图、吞吐量相关、事务相关
性能测试调优:性能测试方案、Linux服 务器性能监控、JVM配置调优、tomcat配置调优、性能测试报告
数据库调优:慢查询、 线程池、索引命中率、行锁
性能测试指标:衡量性能好坏的包括响应时间,TPS,资源利用率
Jmeter在性能测试中的应用
分析需求,搭建测试环境,编写测试计划和测试用例,录制和调试脚本,设置和运行场景,监控和收集数据,写分析报告,项目综合评审
上面就是我为大家整理出来的一份软件测试工程师发展方向知识架构体系图。希望大家能照着这个体系,完成这样一个体系的构建。可以说,这个过程会让你痛不欲生,但只要你熬过去了。以后的生活就轻松很多。正所谓万事开头难,只要迈出了第一步,你就已经成功了一半,古人说的好“不积跬步,无以至千里。”等到完成之后再回顾这一段路程的时候,你肯定会感慨良多。
这一些资料,对做【软件测试】的朋友而言应该是较为完整了,这类学习资料也陪伴我走过了最艰难的路程,希望也可以帮助到你!万事要尽早,尤其是技术行业,一定要提升技术功底。
以上软件测试资料领取小伙伴可以通过点击下面的小卡片