醒悟的日子,我是怎么一步一步走向软件测试的道路

TEST_二黑 TEST_二黑     2022-10-21     371

关键词:

转行测试是在发小的推荐下,她已经在这行干的风生水起,我想着反正已经跳槽这么多次了,也抱着试试的心态,就是这一试,我的“钱”景之路就开始了…

才发现完全不懂it的我,学起来也不会太困难。反正该学习的渠道我都试了个遍,比如:在网上找资源、加不少相关的技术交流群、报培训班… 通过几个月的学习,对自己充满信心,我的第一份测试工作就这样在华为外包开启…

但是一提及外包测试,大部分人的第一印象就是:工作强度大,技术含量低,没有归属感!

在华为做了2年外包。总体感受就是:

  • 这份工作缺乏归属感,心里总有一种落差,进步空间不大,
  • 接触不到核心技术,公司没有针对你的技术培训与探究,
  • 工作简单,业务重复,通常是工具人的存在。
  • 薪资不高,虽然有加班费,但是还是不高
  • 在深思过后,我还是准备提升自己。

在一次偶然机会下开始初步接触了自动化测试,也学习了 Jenkins 操作以及 Linux 命令行等相关基础技能。

不是在学习,就是在学习的路上,后来尝试着接触一些代码和一些框架,把自己所学的知识融入到你自己的项目中去。把自己的项目整理出一个测试框架去学selenium,网站的架构,代码知识,知识,网络瓶颈,系统优化,优化脚本,去设计场景,去获取目标用户量,去执行,去分析压力结果。

当时由于公司的规模和产品的局限性,导致自动化测试始终未能应用到公司实战项目中。我觉得外面的世界有更多机会,自动化已经流行而且越来越普及,我想要突破自己的测试技术瓶颈,我毅然决然的跳槽一家公司专职做自动化测试的工作。

后来的机缘巧合,我跳槽到了字节做测试开发,负责开发公司定制化的测试质量平台。

这对于我来说是一个挑战,新的领域,测试开发在一线城市非常吃香。当时的待遇比初、中级开发工程师要高。

到岗后就是顶住压力,不断的系统学习测试开发技能,而且学以致用。技术架构采用的是前后端分享,包括Python的后端开发框架Flask,前端框架vue,elementUI组件等

坚持做了几年的测试开发,真实的体会到测试开发等于测试全周期的工作,包括产品功能业务熟悉,测试平台的需求设计,平台前后端研发,平台的自测,给到测试部门几十号人的推广、培训产品使用、运营。

所以测试开发的大前提是功能测试经验丰富,接口自动化,UI自动化非常熟练,不然很难以开展测试开发工作。

如果你也在往自动化测试开发方向发展

在适当的年龄,选择适当的岗位,尽量去发挥好自己的优势。

测试开发三年,我如何积累经验?

(1)善于利用碎片时间,学习提升自我

从初级测试员升到测试开发,没有别的捷径可走,从始至终我都奉信:进步得靠学习,学习得靠时间堆砌。现在互联网行业基本上都是996趋势,程序员加班情况更为明显,所以利用碎片时间来学习,才是提升自己最合适的方式。

先算算我个人的学习时间账(可参考,可借鉴):

  • 每天早上起床后,大概30min(上厕所,吃早餐,通勤等)
  • 每天上班时,利用别人划水的时间搜一些技术资料,逛逛技术博客,约30min。
  • 晚上通勤、吃饭(这个阶段我一般会休息+娱乐来调整自己状态,刷刷微博、朋友- 圈)
  • 晚上到家后,不管再累都会抽出1~2个小时来学习,看书+看视频。
  • 这样计算下来,一天大概平均在2~3小时,一周5天至少10个小时,不包括周末。

(2)多多参与项目

其实,在很多面试攻略和分享中,我们都能get到一个信息:参与过项目的面试者往往更吃香,更容易获得offer。

(3)提升自己的软实力,让自己更专业

按照我个人的理解来说,初级测试员更像学生,而高级测试员则需要拥有“独当一面”的能力,而这个过渡是需要时间的,也是我前两年来努力的方向之一。

提升自己的软实力,成为更专业的测试员:

  • 要学会积极主动沟通;
  • 协调(扯皮)的能力:工作方面积极主动协调部门;
  • 学会合作,一起完成一个任务或目标。

(4)对技术要掌握一定的广度和深度

既然是技术岗,那么企业对于技术掌握的广度和深度是有自己相应的要求的,学历在技术面前都显得没那么重要了,因此努力提升自己的技术水平是程序员的首要目标。

那么,技术要掌握到什么程度呢?特梳理了一下技术路线,如下图谱:

1、必备基础知识

对于测试新手来说,我们初期需要掌握和熟练使用的测试技术,主要包括下面这些内容:


其中,linux作为越来越多使用的服务器搭配的系统,成为了不管是测试还是运维还是开发,都需要会的内容。通过一系列常规的Linux系统的使用和操作,强化该系统的实战操作,未测试功底打下坚实的基础。

而Mysql作为最具有代表性的数据库之一,掌握一系列测试所需要的数据库知识不管是功能测试,性能测试,都是必要的技能。

2、自动化技术

对于测试新手来说,尤其是近两年刚刚进入这一行业的新手来说,选择将自动化测试作为自己进入职场的第一份工作,或者作为自己3-5年内的职业规划,都是非常好的选择。如果你有观察过招聘市场就不难发现,近几年,招聘自动化测试的需求逐年增加,岗位待遇也比功能测试待遇更高。

当然,更高的待遇就意味着更专业的技术知识。想要走这一方向的新人,可以先将代码学起来,并将思维导图里提到的内容慢慢掌握吃透。这样,后面进阶就会更加容易一些。

3、接口测试技术

接口测试是测试系统组件间接口的一种测试。接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。对于测试新手来说,既是我们需要掌握的一门技术,也是后期可以作为我们进阶方向的选择之一。


测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系。接口测试作为目前最火的技术之一,且内容满足行业当前甚至几年内的需求,是新人从初级攀升至高级测试的必经之路。

4、性能测试技术

性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。负载测试和压力测试都属于性能测试,两者可以结合进行。通过负载测试,确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统各项性能指标的变化情况。


对于新人来说,刚入行能应聘到这个岗位的,应该是寥寥无几。这是因为性能测试的难度相较于功能测试、自动化测试都更难一些。但是,从另一个角度说,如果后期朝着性能测试发展,薪资待遇的选择空间,就非常大了。

5、TestOps架构技术

对于新手来说,想要揭开TestOps的神秘面纱,就需要我们将持续集成的Jenkins框架烂熟于心。


如果能将测试,自动化测试融入到整个开发,运维的整体流水线中,达到完整的过程自动化构建,部署并快速得到测试验证结果,那么这将是完美的测试形态。

写在最后

想要成为优秀的测试架构师,首先你得从人群中冒出来。要想冒出来,你就必须做到与众不同;要做到与众不同,你就要会得更多!

无论是哪行哪业,想要成为大牛,都注定会比别人付出的更多,花费更多时间和经历,掌握别人不具备的知识点和技术经验。学习是无止境的,机遇也是自己创造的,但前提是你是否真的了解软件测试是什么,你是否真的感兴趣并且能坚持刻苦。

上面就是我为大家整理出来的一份软件测试工程师发展方向知识架构体系图。希望大家能照着这个体系,完成这样一个体系的构建。可以说,这个过程会让你痛不欲生,但只要你熬过去了。以后的生活就轻松很多。正所谓万事开头难,只要迈出了第一步,你就已经成功了一半,古人说的好“不积跬步,无以至千里。”等到完成之后再回顾这一段路程的时候,你肯定会感慨良多。

这些资料,还很多录制的视频教程,对于做软件测试的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。希望对大家有所帮助…….

虽然学无止境,但只要功夫下的深,特棒磨成绣花针。共勉~

我是如何一步一步实现网页离线缓存的?

问题一个HybridAPP,如何做离线缓存策略?也可以简单来说,你的APP只是一个壳,里面真正加载的内容是H5,如果优化加载内容的速度?先了解一下NSURLProtocol从字面意思看它是一个协议,但是它其实是一个类,而且继承自NSObject。... 查看详情

我是如何一步一步搞定小区的安防系统(代码片段)

前言博主从小就是一个喜欢把事情简单化的男人,但是现实总是在不经意间给你太多的惊喜,比如不停的搬家。博主从大学毕业到现在前前后后凑足了10次搬家运动,终于在第10次搬家的时候搬进了真正属于自己的房子。15年底趁... 查看详情

梦想的启航

...一次不知道该写什么好,所以我就写写自己的一些想法。我是西安科技大学物联网专业的一名大二的学生,我们这一届学生是大类招生,所以上学期分了专业,由于一直以来就比较酷爱软件方面的东西,所以当时豪不犹豫的选择... 查看详情

visualc++2010在写好的c程序后,如何一步一步查看程序的运行??

...+2010在写好的C程序后,如何一步一步查看程序的运行??我是想看程序的运行过程。。我用的vs2012,不过原理都是一样的,打开你的程序,在上方菜单里,有调试选项,下拉选择里有逐语句调试(快捷键f11),点击逐语句调试,... 查看详情

一步一步实现混合驱动自动化测试框架的搭建(代码片段)

一步一步实现混合驱动自动化测试框架的搭建实现功能:登录126邮箱,添加联系人,然后发送邮件,带附件 数据驱动框架结构:Action:   封装的操作元素的函数,如login,添加联系人。。。conf:日志配置文件定位... 查看详情

一步一步学习identityserver3

...境中给例子有很多不一样的地方 比如自定已登录界面怎么做?怎么访问自己的用户数据库实现登录?怎么在接口中使用,在接口中又怎么实现与Idr3结合授权?等等问题解下来我会在实际项目中整体一步一步介绍先上一些例... 查看详情

从零开始带你一步一步使用yolov3测试自己的数据

上一篇: 从零开始带你一步一步使用YOLOv3训练自己的数据我给大家详细介绍了如何使用YOLOv3模型来训练自己的数据集。训练部分完成,本文将继续给大家详细介绍如何使用我们训练好的模型来进行图片的批量测试。一、... 查看详情

求android软件开发项目的教程,一步一步教的

参考技术Ahttp://wenku.baidu.com/course/view/b46ea98271fe910ef12df803这个是百度文库的轻松几步学Android开发。本课程包括Android平台下开发的基础知识,项目编程的实用技巧,还有多个真实案例讲解。通过学习,学员可快速开发一个可正常运... 查看详情

从零开始带你一步一步使用yolov3测试自己的数据(代码片段)

...f1a;AI有道(redstonewill)上一篇:从零开始带你一步一步使用YOLOv3训练自己的数据我给大家详细介绍了如何使用YOLOv3模型来训练自己的数据集。训练部分完成 查看详情

一步一步实现基于redis的分布式锁

前提  通过多线程请求一个接口,实现抢单的实现。  总数:10  线程数:200  测试方式:Jmeter   无锁状态            在无锁状态下,实现了库存的减少的业务逻辑。测试过程中,在没有并发情... 查看详情

02~一步一步教你使用svn之svn的介绍

SVN的介绍一.学习SVN的主要内容的介绍1.基本操作:学习SVN有哪些基本操作2.服务器端的安装配置:SVN中必不可少的2个环境之一,会在下面的课程中介绍服务器如何去安装和配置3.客户端软件的使用:在实际开发中,使用客户端软件来操... 查看详情

一步一步学习springaop概述

1.啥是AOP在软件业,AOP为AspectOrientedProgramming的缩写,意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP采取横向抽取机制,解决公共功能的重复性代码(性能监视、事务管理、安全... 查看详情

如何一步一步删除环境下oracle11g集群节点

...的服务管理器中关闭;2.打开注册表:regedit打开路径:这一步中,可以用到我们在注册表清理软件一文中介绍的一款及其方便查找路径的小软件。RegistryManagerHKEY_LOCAL_MACHINE\SYSTEM\CurrentContro本回答被提问者采纳 查看详情

调试jdk源代码-一步一步看hashmap怎么hash和扩容

调试JDK源代码-一步一步看HashMap怎么Hash和扩容调试JDK源代码-ConcurrentHashMap实现原理调试JDK源代码-HashSet实现原理调试JDK源代码-调试JDK源代码-Hashtable实现原理以及线程安全的原因   还是调试源代码最好。开发环境 JD... 查看详情

调试jdk源代码-一步一步看hashmap怎么hash和扩容

调试JDK源代码-一步一步看HashMap怎么Hash和扩容调试JDK源代码-ConcurrentHashMap实现原理调试JDK源代码-HashSet实现原理调试JDK源代码-调试JDK源代码-Hashtable实现原理以及线程安全的原因   还是调试源代码最好。开发环境 JD... 查看详情

如何一步一步用ddd设计一个电商网站——停下脚步,重新出发

阅读目录前言单元测试纠正错误,重新出发结语 一、前言  实际编码已经写了2篇了,在这过程中非常感谢有听到观点不同的声音,借着这个契机,今天这篇就把大家提出的建议一个个的过一遍,重新整理,重新出发,为... 查看详情

一步一步搭建svn服务之主干分支操作

    公司的项目越来越大,开发人员越来越多,项目中有不同的里程碑,也就是不同版本。软件开发的过程中,如果发现上一个版本有一个紧急BUG,并且需要立即发包修复。这个时候就进退两难,如果你做了版本管理,直接切换... 查看详情

jumpservice一步一步安装(代码片段)

一步一步安装(CentOS)本文档旨在帮助用户了解各组件之间的关系,生产环境部署建议参考 进阶安装文档云服务器快速部署参考 极速安装安装过程中遇到问题可参考 安装过程中常见的问题测试推荐环境CPU:64位双核处理器... 查看详情