测试开发是什么?为什么现在那么多公司都要招聘测试开发?

作者:霍格沃兹测试开发学社
链接:https://www.zhihu.com/question/61776013/answer/2558114597
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
 

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

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

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

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

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

BAT 测试开发必备技能和成长路径

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

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

可以对照以上几条,分析下一步的技术投资方向。

另,可以私信我发一份测试开发技术测评,只需花 5 分钟时间,就可以明确自己的能力层级。

从传统测试到测试开发的成长路径

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

测试开发是什么?为什么现在那么多公司都要招聘测试开发?_第1张图片

测试开发技能难点和快速学习通道

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

比如,学习自动化测试框架容易,但是在落地实战中,框架稳定性与适用范围、用例稳定性、用例可复用性等问题则让人头大。又比如,同样做自动化,不同公司背景的实施能力和效果都不尽相同。对你们团队来说,在当下这个阶段,自动化测试该如何做?做到哪个程度?人员素质能否跟上?投入产出比是否值得?等等。质量保障是一个复杂的系统工程,在各种因素影响下,平衡好“质量-效率-成本”三者关系非常不容易。

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

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

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

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

参考如下

模块一 | 夯实互联网测试技术基础

- 了解互联网测试流程与技术体系平台建设

- 掌握 Linux/Bash 脚本编程与三剑客利器

- 掌握 SQL 和常用关系型与非关系型数据库

- 掌握 Git 常用命令与主干/分支开发模式

- 掌握 Python 编程语言与测试框架实战

- 掌握 Docker 容器技术基础

模块二 | 搞定客户端自动化测试技术与实战

- Web 自动化测试框架 Selenium 实战

- App 自动化测试框架 Appium 实战

- Page Object 模式的自动化测试最佳实践

- 从零开始打造定制化 UI 自动化测试框架

- 基于开源工具的自动遍历测试技术与实战

- 学会搭建自己的智能设备测试平台

- App 专项测试技术工具与实战模块三 | 攻坚服务端自动化测试技术与实战

- 掌握常见接口测试抓包与代理工具

- 使用最流行的 Requests 进行接口测试

- 接口测试 Mock 实战

- 接口测试框架封装与定制化改造实战

- HttpRunner 作者带你打造自己的接口测试框架

- 接口测试前沿技术(Swagger、Dubbo、流量回放)

- 企业级接口安全测试实战

- 基于 JMeter 的电商系统性能压测实战

- 性能监控系统 Influxdb+Grafana+Prometheus

模块四 | 提升持续集成/持续交付/DevOps 能力

- Docker 镜像实战与搭建常见测试平台

- K8S 容器编排和批量运行测试用例

- Jenkins 企业级持续集成体系构建实战

- UI 自动化测试与接口测试的持续集成接入

- 基于 Docker+Blue Ocean 构建持续交付体系

- 基于 Jenkins API 实现运维与测试的协同自动化

- 基于 Spring Boot+Docker 的持续交付项目实战

- 基于 Python Flask 的测试平台后端开发实战

- 基于 Vue.JS+Vuetify 的测试平台前端开发实战

- 测试右移技术体系(Elasticsearch+Logstash+Kibana)

- 线上质量监控与测试数据分析实战

 

你可能感兴趣的:(功能测试,测试工具,单元测试,测试覆盖率,集成测试)