专栏首页猪圈子Python 测试开发从入门到高手成长之路

Python 测试开发从入门到高手成长之路

在“质量第一,效率为王”的移动互联网和大数据时代,互联网 IT 技术团队为了应对产品快速迭代要求,就必须具备持续交付的能力。而在测试这个环节,就意味着必须拥有自动化测试、持续测试以及质量实时监控能力,才能高效保障产品质量。

测试开发的黄金时代

不懂开发的手工测试已经跟不上行业发展,成为“新时代的文盲”和“被优化”的对象。而测试开发工程师则脱颖而出,尤其是技术栈全面、项目实战经验丰富的中高级测试开发工程师(阿里巴巴 P6+),是目前人才市场的绝对稀缺资源,可谓高薪溢价,一将难求。一个优秀的测试开发工程师手里可能同时会拿 4、5 个 BAT 大厂 Offer(年薪 50W+ 起,年薪 100W+ 也大有人在)。

与业内 BAT 测试经理/高工交流,经不完全粗略统计,优秀的测试开发工程师目前在业内占比预估仅为 1% 左右。这就是靠谱的测试开发一路平趟,通吃高薪岗位的本质原因,因为供需矛盾实在是太明显了。

测试开发技术也在快速发展,各种新技术新应用层出不穷。在 BAT、TMD 等互联网巨头企业内部,已经在普遍落地互联网自动化测试技术体系,甚至全链路压测、精准化测试、大数据测试、AI+ 测试、DevOps 等等,行业里更多的中小企业也都在奋起直追。

可以说,现在就是测试开发工程师的黄金时代!而能否在变化中把握住新的历史机遇,吃到窗口期红利,就看你是否做好了准备!

测试开发核心能力

不少测试行业新人、想转型的传统测试工程师都会疑问,甚至一些初级测试开发也会感觉自己做的很杂?,并不清楚:

  • 怎样才算合格的测试开发工程师?
  • BAT 大厂测试开发面试重点考核哪些技能?
  • 如何规划学习路径,快速成长?

一个优秀的测试开发工程师需要具备以下几个核心能力(职级越高,要求越综合):

  1. 互联网测试基础能力:深入理解互联网前沿测试技术体系和相关理论知识;
  2. 扎实的编程开发能力:熟悉 Linux/Shell 编程,能熟练掌握一门高级开发语言(初级推荐 Python,高级推荐 Java,甚至包括特定领域语言如 Go/Rust);
  3. 深入代码分析的能力:Sonar 等各类代码静态分析和建模技术;
  4. 深入运行时分析的能力:覆盖率、代码插桩统计、Hook 等技术;
  5. 深入测试业务的能力:能完成业务建模、用户行为和风险分析;
  6. 深入重点的自动化测试项目能力:接口、UI、移动专项的自动化测试;
  7. 能够完成工具化和平台化任务的能力:能够创建领域专用工具和平台;
  8. 能够完成线上测试和线上质量监控的能力:性能压测、线上数据分析和质量统计;
  9. 能够完成公司测试流程改进和工程效率提升的能力:推动 DevOps、持续交付落地;

大家可以对照以上几条,评估自己的能力等级和分析下一步的技术投资方向。另,也可以通过「测试开发能力快速测评表单」(地址文末获取),只需花 5 分钟时间,就可以明确自己的能力层级。

这里也推荐一个更清晰的从传统测试到测试开发工程师的成长路径图

测试开发成长难点

从手工点点点到自动化测试开发,从瀑布模式到持续交付、DevOps,这条转型升级之路对绝大部分测试工程师和测试团队来说,都可谓充满挑战!

一方面,测试开发涉及到的技术知识繁杂,有一定的技术门槛。另一方面,每个团队在落地自动化测试技术体系时,又会衍生出各种各样的个性化实战问题

比如,学习自动化测试框架容易,但是在落地实战中,框架稳定性与适用范围、用例稳定性、用例可复用性等问题则让人头大。又比如,同样做自动化,不同公司背景的实施能力和效果都不尽相同。对你们团队来说,自动化测试如何做?做到哪个程度?人员素质能否跟上?投入产出比是否值得?

总之,质量保障是一个复杂的系统工程,牵涉到的变量除了技术问题,也会有业务场景、团队技术实力、发展阶段目标、管理风格,甚至办公室政治等各方面的客观影响。在各种因素影响下,平衡好“质量-效率-成本”三者关系非常不容易。

测试高手之所以成为高手,不仅是因为技术实力强大,更重要的是经历过风雨,有各种踏坑填坑的血泪经验!这也是测试开发工程师从入门到高手技能成长的核心挑战。

想快速提升测试开发技能水平,路径只有一个:

找到领域专家,学习过来人的踏坑经验,并结合自己公司业务实践落地,内化成自己的能力并持续优化。

站在巨人的肩膀,自然可避免很多不必要的弯路。如果还能找到志同道合的小伙伴一起打怪升级,交流探讨遇到的各种问题,那就更好了。

本文分享自微信公众号 - 猪圈子(Tester-sc)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-11-18

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 软件测试行历路程以及交付准则

    怎么办!作为你们的菜鸡博主 ,我就用菜鸡的经验,与各位分享之 ,「 能够为你们解答我很开心,每天进步一点;个人点,欢迎指教 」点击文首「 猪圈子」关注作者

    测试小兵
  • 面试题二十一期-中高级测试工程师68道面试题

    就算所有人都不支持你。这条路会很曲折,你也会一度认为是不是自己选错了,但只要坚持,就算最后没有成功,但努力了就不会有遗憾。

    测试小兵
  • 今日一刨:刨稳测论功底

    软件测试方法一般分为两种:白盒测试与黑盒测试。白盒测试又称为结构测试、逻辑驱动测试或基于程序本身的测试,它着重于程序的内部结构及算法,通常不关心功能与性能指标;...

    测试小兵
  • DevOps之自动化测试

    ? 大家好,我是冀博,目前负责新一代数字化企业云平台 “The Platform” 的测试工作,很荣幸有这次机会和大家分享交流,今天向各位分享的主题是《Dev...

    yuanyi928
  • 自动化软件测试与人工测试比较

     既然现在有了自动化测试,甚至现在许多团队在使用人工智能的方法,逐渐让机器来取代人的测试。那么作为测试工程师的人未来会不会消失?这是一个摆在许多人面前的一个严肃...

    小老鼠
  • 通过一张图来了解一下敏捷测试和DevOps测试

    现在DevOps已经成了一个非常热门话题,但是又有谁真正理解了DevOps,可能少之又少。上周聆听了茹炳晟老师的在线课程,通过一张图我才发现真正理解了DevOp...

    小老鼠
  • 软件测试员一定需要懂编程代码吗?

    软件测试人员需要懂代码吗?如果软件测试人员会代码,那还有软件开发人员的事吗?既能测试又能敲代码的人是不是很牛?

    新梦想IT职业教育
  • 软件测试菜鸟入门

    随着技术的发展,各种应用程序、各种App应运而生!在早期,这些应用程序只是通过开发人员、产品以及部分用户使用之后,给出相应的修改意见,感觉都OK后...

    软件测试君
  • 流程相关

    一般是在产品相对比较完善,也就是功能测试完成后进行,因为这个时候各个模块的关联基本都做好了。(我们有时候虽然只是测试某个功能,但关联到很多其他模块)

    张树臣
  • 持续测试是什么?

    软件开发和交付正在从复杂、独体式应用程序朝更加分布式、以服务为中心的架构转变,前缀的许多依赖关系在编译时解析,而后者的依赖关系在运行时解析。大部分企业应用程序...

    shaonbean

扫码关注云+社区

领取腾讯云代金券