近年来测试行业洗牌加剧,不懂“技术”的功能测试人员,在企业中不仅发展受限,而且还不得不面临越来越边缘化的尴尬。 特别是随着“提质增效”的呼声越来越大,业界用人的标准也从人海战术转为“招聘1个人,干3个人的活,发2个人的工资”。 如果说自动化测试技术,以前是工资高低的炼金石,那么现在,自动化测试则是你不被内卷的防身术。
从各大招聘网站发布的数据来看,纯功能测试人员的数量在测试行业当中的占比也在逐年下降,而自动化测试的比重则在不断上升。不久前,群里有个做了 3 年测试的朋友去面试,因为不懂自动化测试,被定级为“初级测试”。他觉得自己受到了侮辱,但他没意识到:很多公司都已经停止招聘只会功能测试的人员了。
毫不夸张地说,在当前竞争如此激烈的背景下,应聘测试工程师,如果你不懂自动化测试,连面试机会都不会有。
那么,功能测试工程师如何转型自动化测试呢?最好的方式是在工作中学习,但是我们深知,公司大概率是没有信心让你通过工作本身来锻炼测试开发技术的。
其次是有师傅带,手把手教,这样学习的也快。但是在动辄996的工作模式下,师傅们都疲于追逐KPI,不见得有时间和精力来帮助你成长。
效率最低的方式就是自学。我们知道,在你不具备全局视野的情况下,自学无异于是一次探险,通过自学成为测试开发高手的难度不亚于通过背诵口诀练就“九阴真经”。虽然最终你也可能学会,但是你一定会花费数倍,甚至数十倍的精力,而且没有高手指点,你一定会走弯路,甚至有可能”走火入魔“,最终自我放弃。
那么,如此说来,功能测试人员学习自动化测试,难道没有其它途径了么?
好在我们处于一个信息非常发达的社会,有大量的高手愿意分享自己的经验和教训,愿意帮你规划一条从功能测试到自动化测试的捷径,通过设置“真实的工作任务”让你犹如在工作中进行学习,并且愿意手把手的帮你解决在学习中碰见的难题。
大家如果需要我的一些软件测试学习资料、面试资料
或者想和广大群友讨论【怎么学软件测试、自动化测试的都可以点这里】✔←
在编程语言上可以选择Java或者是Python,最好还是从Python入手,毕竟Python是做自动化工作首选的一门语言,需要注意的是,在学习编程语言的过程中,定要忘掉你是做测试的,把自己当成开发,系统的去学相关的编程知识,因为语言水平的高低,很大程度上就决定了自动化水平的高低。
二、学习selenium在 selenium 学习前了解下 selenium 的原理,selenium操作浏览器需要依赖的驱动,驱动版本与浏览器版本也有对应关系,尤其是IE浏览器。
selenium学习流程:
- 浏览器控制(打开网页,最大化,关闭)
- 元素定位(优先id,name,link text其次class,partial link
- text,最后xpath)
- 操作元素(点击,输入,是否可见)
- 下拉框处理 等待时间(固定,显性,隐性)
- 浏览器弹窗操作 frame的切换
- 浏览器页签的切换 js操作页面元素 模拟鼠标和键盘操作
学会了 selenium 还是不够的,要对用例进行管理还要学会单元测试框架,Python 有很多单元测试框架,推荐 unittest 或者 nose,两者的资料都好找而且比较好用。
unittest 可以简单学习下基本结构,知道 setUp,test_XX,tearDown 的执行顺序,批量用例执行,HTMLTestRunner 测试报告,DDT 数据驱动。
大家如果需要我的一些软件测试学习资料、面试资料
或者想和广大群友讨论【怎么学软件测试、自动化测试的都可以点这里】✔←
学会了一、二、三步,恭喜你已经迈进了自动化测试的大门,最后你要学会自动化测试的思想,自动化测试的流程,注意事项。
编写自己的测试框架,框架需具备以下功能:常用的操作封装、数据的管理、Html测试报告、用例的规划执行等基本功能。
然后慢慢对你的测试框架增加功能,可以对常用数据使用配置文件(configparser)、参数化(DDT)、记录日志(logging),脚本自动执行,自动发送报告,失败用例重跑等,一个成熟自动化测试框架就搭建起来,你的 Python 技能也能提高一大截。



