目前的测试工程师分为两大类别,一类是做业务功能测试的,另一类是做测试开发的,二者的核心竞争力有很大差别。只有当你真正明白了自己的核心竞争力,你才能理清 “应该做什么” 和 “应该怎么做” 这两个问题,才能朝着正确的方向前行。

传统测试工程师应该具备的核心竞争力

** 测试策略设计能力 **
测试策略设计能力是指,对于各种不同的被测软件,能够快速准确地理解需求,并在有限的时间和资源下,明确测试重点以及最适合的测试方法的能力。
测试策略中的关键问题:

** 测试用例设计能力 **
测试用例设计能力是指,无论对于什么类型的测试,都能设计出高效地发现缺陷,保证产品质量的优秀测试用例。

** 快速学习能力 **
快速学习能力,包含两个层面的含义:

** 探索性测试思维 **
探索性测试是指,测试工程师在执行测试的过程中不断学习被测系统,同时结合基于自己经验的错误猜测和逻辑推理,整理和分析出更多的有针对性的测试关注点。

** 缺陷分析能力 **
缺陷分析能力,通常包含三个层面的含义:

** 自动化测试技术 **
掌握自动化测试技术,可以把你从大量的重复性手工劳动中解放出来,这样你可以把更多的时间花在更多类型的测试上。
自动化测试的核心价值还是 “测试” 本身,“自动化” 仅仅是手段,实际工作中千万不要本末倒置,把大量的精力放在 “自动化” 上,一味追求自动化而把本质的 “测试” 弱化了。

** 良好的沟通能力 **

测试开发工程师的核心竞争力

** 测试系统需求分析能力 **
除了代码开发能力,测试开发工程师更要具备测试系统需求分析的能力。你要能够站在测试架构师的高度,识别出测试基础架构的需求和提高效率的应用场景。

** 更宽广的知识体系 **
测试开发工程师需要具备非常宽广的知识体系:

DevOps 思维

DevOps 强调的是,开发、测试和运维等组织团队之间,通过高效自动化工具的协作和沟通,来完成软件的全生命周期管理,从而实现更频繁地持续交付高质量的软件,其根本目的是要提升业务的交付能力。
DevOps 的具体表现形式可以是工具、方法和流水线,但其更深层次的内涵还是在思想方法,以敏捷和精益为核心,通过发现问题,以系统性的方法或者工具来解决问题,从而实现持续改进。
因此,测试工程师也必须深入理解 DevOps 思想的核心和精髓,才能在自动化测试和测试工具平台的实现上做出最契合的设计。无论是测试工程师,还是测试开发工程师,都会成为 DevOps 实践成功落地的重要推动力。
DevOps 的学习路径,可以从深入掌握 Jenkins 之类的工具开始,到熟练应用和组合各种 plugin 来完成灵活高效的流水线搭建,之后再将更多的工具逐渐集成到流水线中以完成更多的任务。


↙↙↙阅读原文可查看相关链接,并与作者交流