转行测试是在发小的推荐下,她已经在这行干的风生水起,我想着反正已经跳槽这么多次了,也抱着试试的心态,就是这一试,我的“钱”景之路就开始了…
才发现完全不懂it的我,学起来也不会太困难。反正该学习的渠道我都试了个遍,比如:在网上找资源、加不少相关的技术交流群、报培训班… 通过几个月的学习,对自己充满信心,我的第一份测试工作就这样在华为外包开启…
但是一提及外包测试,大部分人的第一印象就是:工作强度大,技术含量低,没有归属感!
在华为做了3年外包。总体感受就是:
1.这份工作缺乏归属感,心里总有一种落差,进步空间不大,
2.接触不到核心技术,公司没有针对你的技术培训与探究,
3.工作简单,业务重复,通常是工具人的存在。
4.薪资不高,虽然有加班费,但是还是不高
5.在深思过后,我还是准备提升自己。
在一次偶然机会下开始初步接触了自动化测试,也学习了 Jenkins 操作以及 Linux 命令行等相关基础技能。
不是在学习,就是在学习的路上,后来尝试着接触一些代码和一些框架,把自己所学的知识融入到你自己的项目中去。把自己的项目整理出一个测试框架去学selenium,网站的架构,代码知识,知识,网络瓶颈,系统优化,优化脚本,去设计场景,去获取目标用户量,去执行,去分析压力结果。
当时由于公司的规模和产品的局限性,导致自动化测试始终未能应用到公司实战项目中。我觉得外面的世界有更多机会,自动化已经流行而且越来越普及,我想要突破自己的测试技术瓶颈,我毅然决然的跳槽一家公司专职做自动化测试的工作。
后来的机缘巧合,我跳槽到了字节做测试开发,负责开发公司定制化的测试质量平台。
这对于我来说是一个挑战,新的领域,测试开发在一线城市非常吃香。当时的待遇比初、中级开发工程师要高。
到岗后就是顶住压力,不断的系统学习测试开发技能,而且学以致用。技术架构采用的是前后端分享,包括Python的后端开发框架Flask,前端框架vue,elementUI组件等
坚持做了几年的测试开发,真实的体会到测试开发等于测试全周期的工作,包括产品功能业务熟悉,测试平台的需求设计,平台前后端研发,平台的自测,给到测试部门几十号人的推广、培训产品使用、运营。
所以测试开发的大前提是功能测试经验丰富,接口自动化,UI自动化非常熟练,不然很难以开展测试开发工作。
如果你也在往自动化测试开发方向发展
在适当的年龄,选择适当的岗位,尽量去发挥好自己的优势。
测试开发三年,我如何积累经验?
(1)善于利用碎片时间,学习提升自我
从初级测试员升到测试开发,没有别的捷径可走,从始至终我都奉信:进步得靠学习,学习得靠时间堆砌。现在互联网行业基本上都是996趋势,程序员加班情况更为明显,所以利用碎片时间来学习,才是提升自己最合适的方式。
先算算我个人的学习时间账(可参考,可借鉴):
每天早上起床后,大概30min(上厕所,吃早餐,通勤等)
每天上班时,利用别人划水的时间搜一些技术资料,逛逛技术博客,约30min。
晚上通勤、吃饭(这个阶段我一般会休息+娱乐来调整自己状态,刷刷微博、朋友- 圈)
晚上到家后,不管再累都会抽出1~2个小时来学习,看书+看视频。
这样计算下来,一天大概平均在2~3小时,一周5天至少10个小时,不包括周末。
(2)多多参与项目
其实,在很多面试攻略和分享中,我们都能get到一个信息:参与过项目的面试者往往更吃香,更容易获得offer。
(3)提升自己的软实力,让自己更专业
按照我个人的理解来说,初级测试员更像学生,而高级测试员则需要拥有“独当一面”的能力,而这个过渡是需要时间的,也是我前两年来努力的方向之一。
提升自己的软实力,成为更专业的测试员:
要学会积极主动沟通;
协调(扯皮)的能力:工作方面积极主动协调部门;
学会合作,一起完成一个任务或目标。
(4)对技术要掌握一定的广度和深度
既然是技术岗,那么企业对于技术掌握的广度和深度是有自己相应的要求的,学历在技术面前都显得没那么重要了,因此努力提升自己的技术水平是程序员的首要目标。
测试开发工程师必修课
如何才能成为一名真正的测试开发工程师,需要具备哪些硬技能呢?
1)具备一定测试经验。
只有设身处地地经历过测试人员的痛点和难点,才能切实解决他们的问题。
2)会使用常用重要的测试工具。
比如性能测试常用的Loadrunner、jmeter;ui自动化常用的selenium;单元测试常用的testng、junit;安全测试常用的appscan,js注入,xss注入,sql注入等等。
3)具备测试工具开发能力。
下面介绍一些主流的技术栈:
测试工具系统框架搭建:
1)java+maven+SpringMVC ;
2)python+django
对于第一种框架,最好创建分层化的多模块工程,以便更好地设计代码框架和结构。通常dao层主要是和数据库关联;web层是controller,是前端和服务层的衔接;service层提供一些公共服务或业务处理逻辑。Maven工程有了之后,运用当前主流的框架-springMVC,将前后端数据库关联起来。
对于无代码基础,想入门测试开发的小伙伴,可学习第二种框架:python+django,较为易学易用。
前端页面:html,css,jquery,bootstrap,Echarts,前端页面是门脸,是使用人员操作的入口,也是数据输入和展示最直观的地方。
Css样式决定页面布局和美观度;jquery是一种js框架,极大地简化了 js 编程;echarts能够提供简单易用的常用图表,使页面更加有档次感、数据展示更加直观简洁。
后端服务:spring,mybatis,使用Spring框架可以简化很多基础性的工作,配置好后可以方便构建业务应用,是一个非侵入性的轻量级容器。
数据库:Mysql或Orcale 的数据库安装,库表创建,字段设计,常用的sql语句
系统:能熟练在windows或linux系统上搭建项目,日志查看等操作
服务容器:tomcat服务部署,nginx负载配置,docker使用
持续集成:git,jenkins
开发工具:idea和eclipse
代码调试:testng或junit的单元调试及debug和远程debug使用
……
虽然市场上,很多测试开发工程师,没有这里提到的各种水平,但是他们有一个特点,会测试懂开发,代码基础特别扎实。我强烈建议你按着这个学习路线进行学习,坚持学习,尽量到达测试开发的目标,如果达不到,你也会接近这个目标,相信自己,持续学习,坚持下去,不轻易放弃。
关于如何学习软件测试进阶知识,金九银十冲刺一波拿到高薪offer,大家可以参考这份由腾讯大佬总结对标T7的《软件测试工程师发展方向知识架构体系图》,今天在这里免费分享给大家。希望能给做软件测试的朋友带来便利,少走弯路,可以形成一套自己的方法,并应用到实际中。
下面分享我整理的这份2022年可能是最全的软件测试工程师发展方向知识架构体系图。
最后,自学软件测试学习方法送上:
这些资料,对于做软件测试的朋友来说应该是最全面最完整的备战仓库!你可以在公众号:豆子熊,获取上方面试题资源完整版及自动化资源详细解析。作为一位过来人也是希望你们少走一些弯路。
以及一份216页软件测试工程师面试宝典文档资料,还有相对应的视频学习教程:其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。希望对大家有所帮助…….
加油吧,测试人!如果你需要提升规划,那就行动吧,在路上总比在起点观望的要好。