3年测试越来越迷茫... 技术跟不上接下来是不是要被淘汰了?
这两天和朋友聊到了软件测试的发展:这一行的变化确实蛮大,从开始最基础的功能测试,到现在自动化、性能、安全乃至于以后可能出现的大数据测试、AI测试岗位需求逐渐增多。我也在软件测试这行摸爬滚打有些日子了,正好有朋友问我:如何快速成为互联网时代优秀的测试工程师呢?趁着最近终于有了些闲余时间,遂总结了下自动化测试的成长线路图和职业必备技能,希望可以帮助各位少走弯路、破茧成蝶、迈向成功。
下面我来分享下我的自动化测试经验及发展方向,或许能帮助你解决很多工作中的迷惑。
一、技术型路线发展方向
1、自动化测试工程师
自动化测试工程师细分可以有UI自动化测试工程师,APP自动化测试工程师、接口自动化测试工程师等等。
那么怎么才能成为一个合格的自动化测试工程师呢。
首先,必须要掌握一门编程语言,应该以Java或者python为主,虽然什么语言都可以用来做自动化测试,但毕竟这个两个最流行嘛,如果不想成为自动化测试工程师里的非主流自动化测试工程师,那我还是强烈推荐大家选择这两门语言。
编程语言是自动化的核心,不会编程,都是白搭。然后要会主流的测试框架,和一些辅助工具。
主流的框架啊,不外乎selenium,appium,monkey,monkeyrunner之类的,基本上掌握了这个几个APP和U
自动化都可以玩的转了。
然后接口自动化的话当然各位要知道什么是接口啊,不然玩个什么鬼。
辅助工具就太多了,大家各有各的喜好,没什么是必须要会的,这里就给大家推荐几个常用的工具。
postman,接口测试工具。
fiddle,抓包工具。
navicat,数据库管理工具。
HTTPwatch,网页监测工具
uiautomator,APP元素查看工具。
等等啦。
还有什么sql,linux,IDE啊这种就不要单独说了吧,通用的知识都是必须掌握的。
相信初步掌握了这些你就可以自动化入门了,熟练掌握就基本上可以完成大多数的工作了。
2、性能测试工程师
性能测试工程师,其实我不是很推荐,因为这个很容易遇到学习瓶颈。
做性能测试简单,只要熟练使用loadrunner,jmeter等工具,基本上都可以做性能测试了。
可是为什么不推荐呢?
因为如果只需要会工具就能成为一个性能测试工程师,那这个门槛也太低了。
性能测试好做也好学,可是性能调优,这个性能测试工程师的核心,最关键的技能,学习周期太长,学习代价太高,见效太慢。
所以啊,其实就是我也不知道这个性能调优到底怎么玩。
言归正传啊,刚刚提到的那两个工具是必须要掌握的,然后C、Java也是要会的。
毕竟你不能完全依靠录制来完成脚本的编写。
然后各种协议是要掌握的,IP/TCP/UDP/HTTP/SOCKET等等。Linux就不提了,毕竟性能测试一般都是测试服务器,而服务器一般都在Linux上。
不会Linux的话,你也就最多算个玩工具的,工程师就呵呵呵了。
现在我也找了很多测试的朋友,做了一个技术分享的交流群,共享了很多我们收集的视频教程和技术文档。如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受,可以加入我们一起交流。而且还有很多在自动化,性能方面有一定建树的技术大牛,分享他们的经验,还会分享很多直播讲座和技术沙龙,可以免费学习!划重点!开源的!!!qq群号:110685036
3、持续集成工程师
如果大家关注业内新闻资讯都知道,持续集成是未来这几年软件行业的发展趋势,是一个更加高效更加能把控质量的管理方法。
要入门持续集成,需要各位小伙伴先知道什么是devops。
DevOps(英文Development和Operations的组合)是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的沟通、协作与整合。它的出现是由于软件行业日益清晰地认识到:为了按时交付软件产品和服务,开发和运营工作必须紧密合作。
大概的概念就是这样了,详细的内容大家需要自己去查资料,毕竟这东西和敏捷一样,几句话是说不清楚的。
了解了这个东西后,技术上,需要懂代码(废话啊),服务器运维,持续集成平台CI,如Jenkins这种。
最终的一个目标就是可以实现完整这么一个平台,开发提交代码后,自动触发任务,开始编译部署到测试环境,然后自动进行自动化测试,如果通过了再自动推动到生产环境,如果测试没通过,自动回滚版本,邮件分分钟通知各个负责人哪里没通过,然后开发立刻修改。
有很多业内的小伙伴认为,devops一旦全面实行,对初级软件测试工程师的需求会大大减少。
所以啊,各位,压力山大啊!
4、测试开发工程师
其实这个没什么多说的,测试开发就是一个偏技术测的打杂的,什么都能玩一玩,既可以为测试团队开发辅助测试的工具,又可以和大家一起写自动化测试,还能帮开发coding代码!
想一想,你去给开发说,这里有个问题赶紧改,开发一甩脸色,就知道瞎BB,你行你上啊。
然后你一把推开他,抄起键盘噼里啪啦的把BUG改了,还顺便优化了下他的代码。
哈哈哈,解气不?!各位老铁,就问你6不6。
游艇、飞机还不赶紧来一波!所以啊,这个怎么入门,就是精通测试的时候顺便精通开发就行了。
如果你觉得你测试已经精通了,你就直接学开发的东西就行了,没什么特别要求的东西。
二、自动化测试的学习步骤
1、做好手工测试(熟悉测试基础)
2、学习编程语言(Python/Java)
3、学习Web基础
4、学习自动化测试工具
5、学习自动化测试框架
6、实现自动化测试用例
7、开发自动化测试工具
8、开发自动化测试框架
三、自动化测试系统学习路径
1. 自动化测试必备Python编程内容
2. Web UI 自动化测试基础内容
3. Web UI 自动化测试实战内容
4. APP UI 自动化测试基础内容
5. APP UI 自动化测试实战内容
6. API 接口自动化测试基础内容
7. API 接口自动化测试实战内容
8. CI/CD持续集成专项技术
9. 自动化测试框架实战技术
上面就是我整理出来的一份自动化测试工程师技术路径图。希望大家能在这个成长过程中受益良多。全方位提升测试技术,建立一套属于自己的技术体系。帮助大家不断学习和优化技术栈,跟进先进和主流的测试技术,给到大家带来的不仅仅是技术和薪资的提升,更多的是改变测试人在IT技术领域的地位和心态,拔高测试行业的技术深度。
另特意为各位同学准备了一份13G的超实用干货自学资源,涉及的内容非常全面,涵盖功能测试、Linux数据库、Python编程语言,接口测试、UI自动化测试、性能测试......包括软件学习路线图,50多天的上课视频、16个突击实战项目(满足你对测试经验的需求),80余个软件测试用软件,37份测试文档,70个软件测试相关问题,40篇测试经验级文章,上千份测试真题分享,还有2023软件测试面试宝典,还有软件测试求职的各类精选简历,希望对大家有所帮助…这些都在我的软件测试学习交流群里:110685036
热门相关:骑士归来 最强装逼打脸系统 夫人,你马甲又掉了! 横行霸道 惊世毒妃:轻狂大小姐