八年 “自动化测试” 老鸟,写给 3-5 年测试员的几点建议,满满硬货指导
Posted 程序员二黑.
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了八年 “自动化测试” 老鸟,写给 3-5 年测试员的几点建议,满满硬货指导相关的知识,希望对你有一定的参考价值。
从 13年毕业到现在也从业八年了,普通本科毕业,现在一家互联网公司做测试开发,摸爬打滚,坑坑洼洼也经历了不少。思绪很久决定还是写下这篇,希望对后进的小伙子少走一点弯路。
很多人把职场想得太美好,其实不然。如果你没有规划好,你就会难免遇到各种各样的问题:工作不开心;没有前进的动力;工作不是自己想像的那么好;自己的才能无法发挥;看到以前的同学待遇如何如何,便受不了刺激,急切地想跳槽;当初为了生存而找的工作,根本就不适合自己……
我刚入行的时候每天做的也是最基础的工作,但是随着时间的消磨,我产生了对自我和岗位价值和意义的困惑。一是感觉自己在浪费时间,另一个就是做了快2年的测试,感觉每天过得浑浑噩噩,薪资也从不见涨,岗位也一直得不到提升,我身边的许多同事要么升职加薪,要么跳槽去了更好的公司工作,特别觉得我自己碌碌无为。
我开始思考怎么去改变现状。当时最简单的想法是挤出时间去学习各种测试技术和工具,提高自己的价值,也就是核心竞争力。后来被测试组长偶然发现,给了我一些资源和文档,建议我去研究下自动化测试。当时来说,我还没有接触过自动化测试,但是通过组长给我的资源,让我认识到开发知识对于测试工作的帮助,编程语言的能力会决定你测试技术的深度。当然也能带来收入的高度
那时候正是脚本语言开始流行起来,因为当时项目的原因跟Python结缘,开始用Python语言和Selenium来尝试做自动化测试。那时,关于Python版的Selenium并不多,在学习的同时我开始发表相关博客。分享是学习新技术的驱动力,大多数时候我们很难坚持学一个新技术的原因就在于缺少反馈,不管是做内部分享或者是博客都是很好的反馈机制。当然,也很有成就感。
到后来转型自动化测试,再到测试开发,不知不觉间已经有了8年多测试的经验,月薪也是突破了30K的门槛,在美团测试开发框架组呆过,搭建过美团platuo测试框架,thrift测试框架,自动化测试平台,这也是让我熟悉了python3,vue,陆陆续续也是在多家公司从0到1搭建过自动化测试框架,保障过亿级流量服务的质量工作。
这两天和朋友谈到软件测试的行业趋势,随着转行以及毕业的大学生疯狂涌入软件测试行业。想要获得更好的待遇和机会,不断掌握新的技能,提高业务能力也就变成了目前软件测试从业人员迫在眉睫需要解决的问题。不论是面试哪个级别的测试工程师,面试官都会问一“会编程吗?有没有做过自动化测试?”,所以还停留在功能测试层面,不去提升技术,还要面临长江后浪推前浪的压力。就只能接受窘境,最后甚至是面临淘汰。更别说升值加薪了
所以如何从功能测试到自动化测试,达到技术提升的目的,是很多初级测试人必经的一个阶段。作为一个过来人,对学习过程中的困难深有体会。所以我热衷于收集整理资源,记录踩坑到爬坑的过程。希望能把自己所学,实际工作中使用的技术、自学方法、心得及踩过的一些坑,记录下来。一是更好的梳理自己,二也是能做到更好的社区分享。
自动化测试学习路线:
自动化测试工具使用->Python编程->测试框架->测试框架开发
一、自动化测试工具使用
首先是测试工具的使用,比如说我要去进行web自动化是不是我要去进行自动化测试环境搭建,环境工具。比如说去安装Python安装,这些环境安装。
至于AppUI自动化,除了上面的一些技能还要会比如说adb的命令,app的环境,app的压力测试之类的。
接口测试其实也是一种功能测试,但是它并不等于功能测试,因为对于接口测试的话也分为
- 接口功能测试(需要借助工具进行测试);
- 接口压力测试;
- 接口安全性测试。
而且接口的功能测试是需要借助工具来完成,工具的话就有比如:Postman、Jmeter;抓包的工具fiddler等。
软件相关的工具安装包,都可以去文末我的公众号里领取,自行下载!
二、Python编程语言
编程语言的能力会决定你测试技术的深度,我当时学的是Python语言,了解编程的都知道Python对新人比较友好,相比其他编程语言来说会比较简单。
在网上找了很多的学习资料和学习视频,但是学起来就会遇到很多问题,没有人能帮我解答,还有很多编程的相关知识,也不太懂,自己一个人学起来很费劲的。容易从入门到放弃
所以也是到处去找那种软件测试的学习社区,有幸遇到了一位测试行业的技术大佬,进到了一个很不错的学习交流群内,里面有很多人都和我一样想要提升,所以都在一起学习,有什么问题都会在群里相互讨论、技术交流,这也极大的提高了学习效率。
Python是软件测试进阶的第一步,我们需要掌握Python编程语法,具有一定的编码能力,为基础自动化测试做准备,其次还要掌握Python在自动化中的应用、掌握代码的函数封装、类封装的技能。
三、测试框架
我们还要懂测试框架,Selenium,appium,unittest,pytest,这都是一些开源的框架你至少要懂中间的一到两个。
比如说做WebUI自动化的话,我要懂Selenium+python;做AppUI自动化的话,我要懂appium+python。
如果是进行接口测试的话肯定也是需要去做一个接口的框架,比如:requests。
✪ 测试框架开发
一般一个框架的诞生过程会经过三个阶段:
1、学会使用
大致了解框架的使用,可以去看框架的官方文档,一般里面都有详细的介绍,安装之后便可以开始尝试直接拿它来做项目。
2、阅读源码
想要提升自己的能力、达到进阶的效果,当然不能只局限于框架的使用层面上。需要自己多花几周甚至几个月的时间去阅读框架的源码,这样有助于框架使用过程的各种问题的处理和排查。
3、自研框架
自研框架的要求就比较高,一般都是企业对性能有极高的要求,所有的开源或商业的框架都无法满足公司需求才会走上自研的道路。我们可以尝试分析整个框架性能瓶颈,用更高性能的语言替换关键模块,或用寻找、研究更好的算法去实现关键功能。
关于这些知识点的掌握肯定是需要自己多花时间和精力的,关于这些学习资料和学习教程你可以在文末我的公众号里获取,还很多录制的视频教程,大佬的讲解非常详细,能够帮助你快速理解与掌握。
根据这个学习架构路线,不断地去摸索与提升,突破技术的瓶颈,可以说,这个过程会让你痛不欲生,但只要你熬过去了。以后的生活就轻松很多。正所谓万事开头难,只要迈出了第一步,你就已经成功了一半,等到完成之后再回顾这一段路程的时候,你肯定会感慨良多。我也是走过这样一段路,才能获得更多高薪职位的机会,付出终有回报,也算是对我能力的一种认可吧,真正的证明了自己的价值。至少税后30+的薪水是我当前状态下比较满意的。
如果说你在自动化测试工程师阶段还想往性能测试方面去进行发展,要求就会更多了,其实性能也是一种自动化。所以第一个你也必须要掌握一门编程语言,第二个语言脚本,第三个指标,第四个调优。
最后分享自动化测试完整版的学习路线
希望想突破瓶颈的你一样,通过我的分享可以少走一些弯路,可以形成一条自己的体系,并应用到实际中。当然,也真心的希望你们升职加薪,因为有面包才会有更好的生活追求。
可能给予你助力的教程
上面是我收集的一些视频和面试题资源,对于软件测试的的朋友来说应该是最全面最完整的面试备战仓库,为了更好地整理每个模块,我也参考了很多网上的优质博文和项目,力求不漏掉每一个知识点,很多朋友靠着这些内容进行复习,拿到了BATJ等大厂的offer,这个仓库也已经帮助了很多的软件测试的学习者,希望也能帮助到你!
以上是关于八年 “自动化测试” 老鸟,写给 3-5 年测试员的几点建议,满满硬货指导的主要内容,如果未能解决你的问题,请参考以下文章
在美团呆了7年的测试老鸟,写给 3-5 年测试员的几点建议.....
八年 Java 老鸟,写给 1-3 年程序员的几点建议,满满硬货指导
10年测试老鸟,写给 1-3 年程序员的几点建议,满满硬货指导