10年软件测试工程师感悟——写给还在迷茫中的朋友「十年磨一剑,文末福利」

不知不觉在软件测试行业,野蛮生长了10年之久。这一路上拥有了很是多的故事。有迷茫,有踩过坑,有付出有收获,有坚持!java

我一直都在软件测试行业奋战,有许多同窗好友都已经转行,去选择了更适合本身的路。python

这两天和从上海回来的某厂CTO一块儿吃饭,谈到软件测试的发展,其实软件测试已经在不知不觉中发生了很是大的改变,前几年的软件测试行业仍是一个风口,随着不断地转行人员以及毕业的大学生疯狂地涌入软件测试行业,目前软件测试行业“缺口”已经基本饱和。固然,咱们说的是最基础的功能测试的岗位需求已经不多了,而自动化、性能、安全乃至于之后可能出现的大数据测试、AI测试仍存在着很是多的机会。
在这里插入图片描述
身边的不少朋友想要问一些关于软件测试工程师行业的问题就会来找到咱们,在这十年测试经验,咱们看到了太多想提高测试技术而没有明确方向的人,深入的体会到测试人员的技术痛点,以及测试这个角色在互联网公司的待遇和地位远不及其余岗位,甚至仍是会有不少人会认为测试在公司随时能被取代,无关紧要。linux

那么在软件测试行业若是只会手工测试的测试人不作测试了,咱们还能作什么?惟一办法就是保持持续的学习,但愿裁人的时候本身能幸免,或者公司倒闭了,本身在市场上能更有竞争优点。因有更多机会去面试,因此接触了更多的测试人员,正由于在这个大环境很差的状况下,加上今年新冠的影响,我一样为“若是不作测试了,我还能够作什么”而焦虑。git

但其实,你能够看看其余专业毕业的同窗,他们大多数并不能在工做几年就工资翻倍,或翻几倍!固然,也有广泛比咱们更高工资的专业。不过,我仍然由于本身生在90年代,选择了计算机专业而感到幸运。**软件测试 1079636098 交流群 **
在这里插入图片描述web

关于功能测试想转自动化相关的问题:

因为历史缘由,大部分测试人员,最开始接触都是纯功能界面测试,随着工做年限,会接触到一些经常使用测试工具,好比抓包,数据库,linux等。面试

我大学学的计算机专业,有必定的编程基础。个人软件测试职业开始和大多数测试人员同样,一开始在一家电商公司作软件功能测试。sql

个人公众号测试人追风前几天有人留言问到我,在一线城市作功能测试,若是定个小目标,想拿到年薪二十万,须要具有哪些技能?shell

1.首先必须熟练整个产品的业务流程、业务是基础,这样保证产品在快速迭代时、不只保证新功能的完整性,并且快速回归原有功能不受影响。数据库

2.而后须要掌握一些经常使用测试工具来辅助测试:编程

Web端测试:浏览器开发者工具使用,network、console控制台、兼容性测试

移动端app测试:(安卓/IOS/ipad端)测试全流程,兼容性测试、稳定性测试,流畅度测试、adb经常使用命令

服务端:掌握接口测试、抓包工具使用、如何校验接口的完整性

Linux:经常使用shell命令,查看错误日志

数据库测试:熟悉数据库表结构,掌握经常使用增删改查sql语句,便于分析测试结果。

经常使用工具使用:SVN/git版本控制工具 、postman、jenkins应用打包和构建

换句话说,若是你拿到一个新的产品测试功能,你若是能经过数据库的表结构,和分析系统日志来快速的熟悉产品业务,说明你的测试思惟,功能测试能力已经很是优秀了。
在这里插入图片描述
当时我在上海作软件测试掌握了以上技能点,在公司将工做效率提升了,相对比较轻松,这就致使我有充足的时间,拾起编程语言,最初用的java语言,而后学习各类自动化测试技术,当时以为自动化测试特别有意思,并且挺神奇,激发了我浓厚的兴趣。

后来发现Python语言愈来愈火,并且我发现python来作自动化和对于编程基础比较薄弱的测试工程师来讲特别的合适。

python还能用来爬虫,用python还能写一些定时脚本,数据库脚本,效率很是高。

测试行业的现状

如今测试行业的的趋势,你去面试任何级别的测试工程师都会问你是否会自动化测试,因此自动化测试已是必备技能,而不是加分项。

换句话说,会用开源的测试工具不足以在公司涨薪或者跳槽至一线互联网大厂。由于真正企业自动化测试落地确定是一个团队在作。

当你熟悉使用这些开源框架以后,你会发现有些框架之间是相通的,因此基于这些开源框架,咱们打造一个属于本身的测试框架。

能够根据公司实际测试需求自主封装适合项目的测试框架,落地实用。创建本身的技术体系,获得一套落地有效的自动化测试方案,从青铜变身王者。

这样让咱们自动化团队将更多的精力放在测试用例设计自己上面,达到提升产品质量,提高效率的目的。
在这里插入图片描述
学习的内容必定要基于本身的工做来,这样才能把学来的技术变成工做经验。那么咱们软件测试工程师如何在繁琐重复的手工测试工做中,慢慢扩展积累测试技术,创建本身的技术体系?

大部分测试人员,最开始接触都是纯功能界面测试,随着工做年限,会接触到一些经常使用测试工具,好比抓包,数据库,linux等。

可是有个比较常见的问题,因为如今企业大多数都是敏捷开发模式,容易陷入版本快速迭代中。

以致于没有时间精力再去额外学习一些高级和主流的测试技术,如某种编程语言、自动化测试工具、测试框架搭建、测试平台研发。

即便挤时间强迫本身学习,也不知道从哪里开始入手,那些碎片化的东西,只能让你了解,很难很难消化。

当你要造成本身的输出,用本身的思路和技术来作项目的时候,你要回到那个知识框架里面去学习。

关于学习软件测试的小建议:不要碎片化信息学习,那不叫学习,要有决策性学习,系统的学习,学习解决问题的思路。
在这里插入图片描述
个人初衷很简单:让软件测试更简单!分享学习资料,面试题、技术干货。公众号测试人追风后台也有不少人问我,学习软件测试有没有捷径?我认为少走弯路就是最大的捷径。系统资料➕前人指点是功能测试转向自动化测试乃至测试开发最好的学习方法!

在适当的年龄,选择适当的岗位,尽可能发挥好本身的优点。

个人自动化测试之路,一路走来都离不Python语言,由于较早的接触和使用Python语言,因此,我积累了大量基于Python语言作自动化测试的经验,这里我将这些经验录制成了《Python自动化软件测试》精品课。有兴趣的能够关注专一于分享软件测试各种学习笔记、面试题以及IT类资讯的公众号:测试人追风,获取。

该课程从测试的各个方面为你整理了Python当前最热门的测试库和框架,帮你创建本身的自动化测试技术体系,让你在测试工做变得更加高效。

所有以我以前在企业真实项目实战去驱动理论知识点,丰富的实战场景演练,全方位提高测试技术,创建一套属于本身的技术体系。

目前我一直不断学习和优化技术栈,保证是市面最早进和主流的测试技术,我想的你们学的就是市场所需,将知识和技术变现。

文末福利:上传可能会有压缩,须要高清原图或者更多系统性提高的技术进阶/面试资料能够来找我。

在这里插入图片描述
在这里插入图片描述

最后:

汲取经验在前,方能功成在后,不断学习成长!欢迎加入咱们,交流软件测试Python自动化、测试开发。无论你如今处于哪个阶段,均可以一块儿来报团取暖,咱们都是测试人!