腾讯8年测试工程师经验分享,如何从功能测试转成自动化测试,写给还在迷茫期的朋友

Posted TEST_二 黑

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了腾讯8年测试工程师经验分享,如何从功能测试转成自动化测试,写给还在迷茫期的朋友相关的知识,希望对你有一定的参考价值。

我毕业3年了,但与技术相关的工作也是越走越远。今天我想跟大家分享自己了在软件测试行业发生的那些事,希望能够鼓励那些跟我一样的朋友共同前行。

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

大部分进入测试行业的朋友,最开始接触都是纯功能界面测试,随着工作年限,会接触到一些常用测试工具,比如抓包,数据库,linux等。

有人留言问到我,在一线城市做功能测试,如果定个小目标,想拿到年薪20W,需要具备哪些技能?

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

然后需要掌握一些常用测试工具来辅助测试:

  • Web端测试:浏览器开发者工具使用,network、console控制台、兼容性测试
  • 移动端app测试:(安卓/ios/ipad端)测试全流程,兼容性测试、稳定性测试,流畅度测试、adb常用命令
  • 服务端:掌握接口测试、抓包工具使用、如何校验接口的完整性
  • Linux:常用shell命令,查看错误日志
  • 数据库测试:熟悉数据库表结构,掌握常用增删改查sql语句,便于分析测试结果。
  • 常用工具使用:SVN/git版本控制工具 、postman、jenkins应用打包和构建

如果你拿到一个新的产品测试功能,你如果能通过数据库的表结构,和分析系统日志来快速的熟悉产品业务,说明你的测试思维,功能测试能力已经非常优秀了。

当时我掌握了以上技能点,在公司将工作效率提高了,相对比较轻松,这就导致我有充足的时间,拾起编程语言,最初用的java语言,然后学习各种自动化测试技术,当时觉得自动化测试特别有意思,而且挺有成就感,激发了我让自己对测试的理解和对技术更深入一层,成为一个专业的测试人员。

后来发现Python语言越来越火,而且我觉得python来做自动化和对于编程基础比较薄弱的测试工程师来说特别的合适,python还能用来爬虫,用python还能写一些定时脚本,数据库脚本,效率非常高。

大胆挑战自动化测试

在入门阶段,要有很强的自制力,平常比较好学,平常没什么事情的时候都会自己在网上找资源报班学习,学敲代码,这才算是真正入门自动化了。每天下班回来就抽出一个小时看视频做笔记,慢慢地也懂了一些测试开发方面的知识。

但是在由于当时公司规模和产品的局限性,导致自动化测试始终未能应用到公司实战项目中。我觉得外面的世界很大,自动化已经流行而且越来越普及,我想要突破自己的测试技术瓶颈,我毅然决然的跳槽一家公司专职做自动化测试工作,于是我顶住压力,不断的系统学习自动化测试技能,而且学以致用。

我将公司产品前后端的自动化测试全部落地实现。

那些自动化脚本真正成为公司资产,在每次上线回归带来的收益远超出我的预期。
并且定时在公司的技术分享会展示效果,那种从0到1的成就感非常难忘。

后面负责自动化测试团队工作,核心框架搭建学习用到的技术栈包括Python语言、Selenium、RF、Requests、Jenkins、以及见识到先进主流的Docker容器技术,持续集成等

让我见识到技术的魅力,技术功底的提升能让整个人非常自信。

所以自动测试给我带来的收益不仅仅是待遇的提高,包括中间做自动化测试遇到的坑,解决问题的思路,以及技术的扩展,增长了见识。

最终形成了一套知识框架体系,得到一套有效落地的自动化测试方案。

为什么要进阶自动化测试

自动化测试是一个蓬勃发展的行业,从小型Junit测试到大型的Selenium脚本,每个人都在走向自动化。你可能会遇到添加了小补丁的相同代码,并且必须再次运行相同的测试。随着自动化的发展,重复任务的误差率会降低到零,但这一阶段只有经过一定的实践和积累才能实现。

当你第一次尝试自动化时,出现问题很正常,但也是可以避免的,毕竟出现问题就意味着损失,增加成本。所以,作为一名自动化测试新手,希望你能牢记这些注意事项,成为一名优秀的自动化测试工程师。

关于测试开发

后来一个机缘巧合,朋友推荐我进入字节做测试开发,负责开发公司定制化的测试质量平台。

这对于我来说也是一个挑战,新的领域,测试开发在一线城市非常吃香。当时的待遇比初、中级软件测试工程师要高太多。

到岗后顶住压力,不断的系统学习测试开发技能,而且学以致用。技术架构采用的是前后端分享,包括Python的后端开发框架Flask,前端框架vue,elementUI组件等
坚持做了几年的测试开发,真实的体会到测试开发等于测试全周期的工作,包括产品功能业务熟悉,测试平台的需求设计,平台前后端研发,平台的自测,给到测试部门几十号人的推广、培训产品使用、运营。

所以测试开发的大前提是功能测试经验丰富,接口自动化,UI自动化非常熟练,不然很难以开展测试开发工作。

如果你也在往自动化测试开发方向发展,在适当的年龄,选择适当的岗位,将自己的优势都发挥出来!

我的自动化测试之路,一路走来都离不每个阶段的计划,因为自己喜欢规划和收集总结,所以,我和朋友特意花了一段时间整理编写了下面的《自动化测试工程师学习路线》

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

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

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

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

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

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

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

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

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

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

十一、互联网高薪测试拓展知识、Redis、MongoDB、nginx集群实战


最后也为大家准备了一份配套的学习资源,你可以在公众号:豆子熊,获取上方自动化测试资源完整版及详细解析,以及一份216页软件测试工程师面试宝典文档资料。相对应的视频学习教程免费分享!,其中资料包括了有基础知识、Linux必备、Shell、互联网程序原理、mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。

祝大家都能拿到心动的offer~~

以上是关于腾讯8年测试工程师经验分享,如何从功能测试转成自动化测试,写给还在迷茫期的朋友的主要内容,如果未能解决你的问题,请参考以下文章

软件测试工程师如何从功能测试转成自动化测试?

腾讯测试员:8年经验分享自学软件测试学习路线附带JAVA学习路线

我在腾讯做测试这5年总结的7条生存经验,受益终身...

字节7年经验分享,如何从0开始搭建公司自动化测试框架?

一个8年软件测试工程师的经验分享——软件测试工程师必看

程序人生:软件测试工程师,如何从手工测试转成自动化测试?这可能是每个测试要走的路...