【自动化测试经验谈】字节8年自动化测试工程师成长之路

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

测试职业的再认识

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

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

自动化测试人员能力素质

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

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

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

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

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

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

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

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

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

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

4)学习能力

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

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

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

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

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

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

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

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

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

平台架构能力

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

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

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

自动化测试人员成长之路

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

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

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

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

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

 我的自动化测试之路,一路走来都离不每个阶段的计划,因为自己喜欢规划和总结,所以,我和朋友特意花了一段时间整理编写了下面的《自动化测试工程师学习路线》,也整理了不少【网盘资源】,需要的朋友可以文末免费获取网盘链接。希望会给你带来帮助和方向。

作为一名自动化软件测试工程师,该怎样努力才能快速成为一名优秀的测试开发大佬,这不仅是一个刚刚踏入职场的软件测试工程师,也是工作三五年之后开始迷茫的工程师,都必须要面对和想明白的问题。

一、先学习一门编程语言,建议python

二、Python自动化测试框架应用

三、自动化测试篇 - Web UI 自动化

四、自动化测试篇 - 移动端UI 自动化

五、自动化测试篇 - 接口自动化测试

六、自动化测试篇 - 持续集成Git、jenkins、Docker

七、自动化测试篇 - 性能测试LoadRunner、jmeter、app性能

八、自动化测试篇 - WEB安全测试、渗透测试、漏洞扫描

九、自动化测试篇 - RobotFramework、AirTest

10、测试开发篇-自动化测试平台开发

11、互联网高薪测试拓展知识、Redis、MongoDB、Nginx集群实战

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

送给大家一句话:

让自己变得更强:想一想,如果你想在测试这个行业一直做下去,你的经验和测试技术是远远不够的,你需要进阶,你需要丰富你的技术栈!还等什么!

绵薄之力

最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走

​这些资料,对于想进阶【自动化测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。希望对大家有所帮助…….

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值