“2022 过去快三分之二了,我啥也没干,光顾着见证历史了!
新冠肺炎疫情肆虐全球,造成数百万人口感染且蔓延趋势仍未控制,直接引发历史罕见的金融海啸、经济危机和政治动荡(美股 20 天熔断 4次、原油期货暴跌为负值、全球经济停摆、破产失业压力激增、逆全球化趋势凸显)。有悲观看法认为这将终结一个大时代,导致大萧条来临。预计在未来较长时间内,全球经济下行、通货膨胀和裁员失业等次生灾害将持续展现。
创历史新高的毕业生大军遇上萎缩的就业市场
新冠肺炎疫情让 2022 就业形势变得异常严峻。一方面,是 创历史新高的毕业生大军 (“2022届高校毕业生1076万人,同比增加167万人,创历史新高。而陕西2022届毕业生达41.5万,同比增长8.2万人,增幅及总量均创历史新高。业内人士预测,全国2023年高校毕业生数量或仍将超过2022年。);
一方面,是 疫情之下萎缩的就业市场 (对很多中小企业来说,首要目标已经不再是 “求增长”,而是 “ 活下去”。经济下行, 减员增效 是企业求生本能)。
即使在“金九银十”秋招旺季,也能明显看到招聘市场传统行业岗位需求缩减,用人要求提高而薪酬预期下调。很多即将毕业的高校学生承受着“ 毕业即失业”的残酷现实压力,不少在职人士也面临着前途迷茫,却 不敢随便跳槽转行 的尴尬困境。
虽然“360 行,行行出状元”,职业并不分高低贵贱,但每个时代总有一些行业会占据历史潮头,无论是发展机会还是薪酬待遇,都能率先吃到时代窗口期红利。
数据显示,占据薪酬排行榜榜首的行业,除了金融,就是 IT 互联网/计算机软件技术领域,高校毕业生平均就业起薪基本都在 10000
元左右,有一定工作经验后,年薪上百万也很常见。如果能幸运的在早期初创阶段就加入行业独角兽/巨头企业拿到期权股票,那更是直接走向人生巅峰,顺利实现阶层跨越。
更重要的,在互联网+时代,随着人工智能、大数据、5G
和物联网等技术的飞速发展,未来互联网技术应用市场有巨大的发展潜能,处在行业风口的企业也需要大量的人才以支撑业务发展。即使在新冠肺炎疫情影响下,依然可以看到互联网企业旺盛的人才需求。欣欣向荣的行业前景和高薪待遇,甚至导致了“360 行,行行转 IT ”的现象。
轻松入行 IT 互联网,选对岗位最重要
很多同学会由于一定的技术门槛(编程/英文),而动摇了求职互联网技术岗位的信心。
其实在 IT 计算机领域有诸多技术岗位,比如 AI 算法工程师、后端开发工程师、前端/移动端开发工程师、测试工程师和运维工程师等。相对来说,软件测试岗位具有“ 入行门槛低,但技能/职业发展上限高 ”的显著特点,是最适合普通人零基础入行的 IT 技术岗位 。
软件测试工程师的主要任务是利用各种测试技术和手段,提前发现程序错误 bug,提高软件交付质量,并最终保障业务运行和用户体验。
在软件测试入门阶段,只需要你有认真细致的态度、有一定的耐心、还有一点突破自我,挑战未知的勇气。
我用了五天的时候整理了今年我认为软件测试就业的主流技术栈大纲,由于内容实在太多,我就能弄成了一张长图,如果你需要的话,可以加我下面的卡片,直接管我要。
学习建议
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注入
暴力破解
脱库
等等
其实安全测试基本上偏向于网络攻防了,也就是传说中的黑客了,不过我们都是好人,这个的发展方向就是白帽子。
推荐知道创宇的学习体系。
我估计你看到这里就更懵逼了。
没关系、等你把基础的东西学会就知道我在说啥了。
毕竟你现在还是一个小白嘛。
不要去纠结这种小事。
各位在这个阶段,正常情况都应该是中级测试工程师的水平了。
前三个阶段学习完成后,各位就应该考虑怎么写代码更合理了。
怎么去测试更全面。
怎么才能更好的保障项目的质量。
我认为,在这个阶段,应该回头重新学习一遍测试基础。
因为这个阶段的提高是思想、方法的提高了。
上面讲的都是教你应该怎么做。
在这个阶段你要自己去发现、为什么要那样做。
跨过了这个阶段就基本上可以成为专家了。
学习都是水到渠成的,在这个时候,你应该已经掌握了不少框架了,甚至自己也能开发合适的框架了。
自动化测试框架、性能测试框架等等。
已经有了属于自己的一套东西了。
在群里或者论坛上去装逼、别人都会尊称你一声大佬了。
可能你也学会了一些其他的技术了,甚至在往全栈等方向跨进了。
总之,到了这个阶段就没什么学习路线了。
如果这篇文章对你有帮助,请给小编点个赞!👍这样我才有动力继续更新下去!