8年美团经验之谈 —— 自动化测试成长之路

最近,小编拜读了测试同行Young的一篇博客园文章《写给想做自动化测试的人》,文中介绍了自动化测试是什么、为什么要进行自动化测试、什么样的人适合做自动化、怎么做自动化测试等内容。这篇文章作者的很多观点,说出了从业7-8年的老兵心声,颇有感触,所以也借此机会谈谈自己对自动化测试的认识。

8年美团经验之谈 —— 自动化测试成长之路_第1张图片

 

测试职业的再认识

这个问题是写给想要做自动化测试的人,或许你以为软件测试的门槛很低,低到任何人都可以做,随便点点就可以了,这个行业太low了,所以你想做自动化测试,提升自己的逼格,我想说手工测试并不low,如果让一个什么都不懂,一点业务基础都没有的人去做测试,能测出来问题吗?不要忽略你的业务知识储备.

以上文字,引自Young的原话,小编看后只有一个感受:说到心坎里了,太T*D对了!

自动化测试人员能力素质

随着这几年国内IT行业的快速发展,测试这一职位也越来越受到企业的重视,但是测试人才却存在巨大的缺口。为了尽快满足项目的需要,所以很多企业招聘时就会降低对测试人员的能力要求,进而导致这一职业被外界普遍认知都是:门槛低、水平低,就是随便点点;许多的待就业人员也会形成同样的认知,大量涌入这一岗位;进而影响下一波人…….如此恶性循环下去。

不乏有一批人觉得这个行业太low,觉得自动化够高大上,在没有打牢测试基础的情况下,开始学python、学语言,立下要做自动化测试的方向…...但是殊不知测试基础都没有做好,写出来的脚本根本不能解决问题。

这以上就是测试行业的现状和自动化测试人员参差不齐的原因。

借着这个机会,小编想说明一下:一位优秀的自动化测试人员应具备的能力和素质。

8年美团经验之谈 —— 自动化测试成长之路_第2张图片

从下到上,依次分别是:基础素质、测试能力、代码能力、平台架构能力和核心驱动力。正如金字塔形状,下层是上层的基础,如:基础素质是测试能力的基础、测试能力是代码能力的基础、代码能力是平台架构能力的基础…..

基础素质:一个人做任何事都离不开基础素质要求,它是根基和基础

1)细心:做事情细致认真,它体现在方方面面,例如:简历格式是否都对齐、有没有错别字、测试发现中一个小的UI错误都不会放过。

2)耐心:做测试也好,做自动化测试也好,都会遇到许多重复的、枯燥难以解决的问题,这时候最需要耐心、沉着应对工作中的各种问题,不浮躁。

3)责任心:就是要自己负责的事情做到最好,举个极端的例子:哪怕是第二天就要离职了,也要在离职前把自己负责的工作都做好。

以上三点,是做所有事情都需要的素质,在测试这一行业尤其重要

4)学习能力

正如Young在其文章中所说的:"软件行业从桌面软件到web端,又从web端迁移到移动端,谁也不知道下一个是什么。而我们作为软件行业的从业者,不能因为那些很火的东西不火了而让自己没落,一个人最为核心的能力就是学习能力,如果你善于学习,你就不必担心这些变迁,因为你可以毫无压力的迁移,selenium的原理你掌握了,学习appium简直小菜一碟…"

5)问题分析能力和问题解决能力:手工测试或自动化测试过程中,一定会遇到各种各样的问题。这些问题需要大家发挥各自的聪明大脑,分析原因、找解决方案、不断去尝试...你把这些问题独立解决了,你的能力就提升了,东西也学到手了。在QQ群里,小编经常看到有许多的同学,想都没想、查都没查,就把问题抛到QQ群里找人解决,这样的话你是得不到锻炼的。

6)总结能力:学过的东西或解决过的问题,要善于经常性地把它总结和记录下来,否则时间久了就忘了。这一点在搜狗的测试团队一直在坚持,与大家分享下OneNote笔记的截图:

8年美团经验之谈 —— 自动化测试成长之路_第3张图片

以上是对测试人员的基础素质要求,一般情况下从业不久的同学,在以上的素质要求上都或多或少有欠缺,这需要在未来的工作中持续不断地进行改进提高,贯穿整个职业生涯。

测试能力:牢固的测试能力是未来做自动化的基础

简单来说,如果没有很好的测试能力,那么就….
无法很好地发现测试过程中的效率问题,
无法很好地设计有效的用例和自动化用例,
无法很好地知道在整个项目流程中什么时候引入自动化,
无法很好地发现BUG,

最终的结果就是没有价值!没有价值的东西是不会被认可的。

代码能力:高质量的自动化测试脚本所必备的能力

这里一般都会有一个误区:很多同学以为掌握了一门语言就是代码能力OK了,其实不然,自动化测试脚本也是需要有代码健壮性、代码扩展性、代码稳定性要求的,而良好的代码功底、数据结构和算法,可以开发出高质量的自动化脚本,这会极大地减少后期自动化脚本的维护成本。

平台架构能力

随着自动化脚本所解决的问题逐步增多,范围逐步扩大,对自动化脚本的架构设计也会提出更好的要求。举例来说:在手机输入法项目,一开始你可能只需要用python+uiautomator(一款自动化框架)写一个脚本满足打字的自动化需求即可;慢慢地,项目要求不再局限于只是打字了,需要你把换肤自动化、发表情自动化、安装卸载自动化…..;再后来,自动化需求会变为这些自动化的操作要进行随机混合在一起…..

这时候就需要有平台架构能力,去搭建一个扩展性强、稳定性高的自动化测试框架了。

创新意识:这是核心驱动力,尤其是自动化相关的工作。

自动化测试人员成长之路

按照小编的工作经历,对于有意愿成为自动化测试专家的同学,分享下自动化测试之路。

第一步:打好扎实的测试功底。时间跨度:2年~3年。在这一阶段,将自己的测试功底打牢,一方面锻炼和积累自己的测试能力,另外一方面持续地学习脚本语言,为后续的工作打下基础,同时持续不断地提升个人的基础素质。

第二步:将所学语言用于实践并锻炼。时间跨度:1年~2年。当第一阶段的测试功底打牢之后,后续的项目中如果有机会,就可以逐步地去自动化技术解决一些重复的、性价比高的自动化问题,在实践的过程中再巩固学习。

第三步:主动挖掘和解决工作中的效率和质量难题,并不断地解决更难的问题,积累更多的经验。时间跨度:2年~3年。

第四步:深入钻研相关领域的知识和技术,将自动化技术应用于在更大范围和更多的项目,形成自己独特的成果。时间跨度:3年~5年。

资源分享

下方这份完整的软件测试视频学习教程已经上传CSDN官方认证的二维码,朋友们如果需要可以自行免费领取 【保证100%免费】

这些资料,对于想进阶【自动化测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。希望对大家有所帮助……基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等配套学习资源免费分享

你可能感兴趣的:(技术分享,自动化测试,软件测试,自动化测试,测试工程师,软件测试,职场和发展)