如何构建软件测试工程师的技能树

白癜风有什么特效药 http://m.39.net/pf/a_4322212.html

软件测试工程师是一个历史很悠久的职位,可以说从有软件开发这个行业以来,就开始有了软件测试工程师的角色。随着时代的发展,软件测试工程师的角色和职责也在悄然发生着变化,从一开始单纯的在瀑布式开发流程中担任测试阶段的执行者,到敏捷开发流程中QA(QualityAssurance)角色,为整个团队和产品的质量负责,测试工程师的职责和边界不断的扩大。近年来互联网行业的很多测试工程师被称为是测试开发工程师,也就是要具备自动化测试和测试工具开发能力的测试工程师,可以说是对测试工程师的能力要求达到了一个新的高度。

相信有过测试工作经验的同学都会深有体会,不管是瀑布式还是agile模式,测试人员的工作总是被压在产品发布的最后阶段,整个团队的压力似乎都压在测试工程师身上,没有人会理会开发过程中产生的延误,因为那已经过去,可以在retromeeting的时候diss,但是目前最重要的问题是完成产品的发布上线。所以在寻找测试工程师需要什么技能之前,测试工程师的核心问题是什么,这是我们要搞清楚的。

测试工程师面临的核心问题如何以最小的投入,最大程度保证产品的质量

这个问题相信大家都有所体会,商业社会追求的就是效率,甚至是极致的效率。测试工程师也不能例外,不管是叫测试工程师,QA,或者是听着高大上的测试开发工程师,其实老板们的目标是一致的,就是在尽可能少的投入,最大程度保证产品的质量。说得现实一点,你的薪资水平就取决于你能解决这个核心问题的能力。明确了我们的目标,我们所需要的能力,也是围绕着这一个目标来设定的。

概述

按照笔者的经验和理解,一个软件测试工程师需要具备以下的技能:

测试设计能力

代码能力

自动化测试技术

质量流程管理

行业技术知识

数据库

业务知识

测试设计

作为一名测试工程师,最基础的能力应该就是根据产品来设计测试用例的能力。最基础的能力往往也是最难做到精通的能力。要设计好的测试用例,需要对产品的特性和业务非常的熟悉,对用户的使用场景有着系统化的思考。除此之外,还有一些科学的测试用例设计方法可以帮助我们设计规范化的用例,而不是仅仅根据经验或者天马行空的想法来设计用例。业界有一些经典的测试用例设计方法需要测试工程师掌握:

边界值分析

等价类划分

因果图

判定表

正交实验设计

上述的这些方法并不是教条,而是帮助我们理清测试用例设计的思路和提高效率的工具。

代码能力

在传统的思维中,对测试人员的代码能力要求似乎不是很高,在业界确实也是这样的。很多测试工程师基本上不具备代码的能力,更多是测试的执行者。但是在当今这个时代下,要想突破传统功能测试人员的天花板,代码能力是必须的。具备代码能力的测试工程师有这样两个优势:

阅读开发代码

如果能够具备阅读开发代码的能力,对于提高测试人员的效率是很有帮助的,它可以帮助我们做到这些一些事情

通过开发修改的代码预估影响的范围,即测试的范围

参加技术评审,预估测试的风险,难点,重点

通过代码的逻辑设计测试用例,强化测试用例的覆盖程度

对缺陷进行初步的定位

其实可以做到的事情还有很多,体现在测试过程的很多细节当中

自动化测试的开发

自动化测试是测试发展的方向,也是提高效率的有效方法。具备了代码能力,你可以轻松的驾驭各种流行的自动化测试框架和用例开发。

自动化测试

接着上面关于自动化测试的讨论。在目前的热门公司的招聘中,自动化能力已经是必备的能力,也是大家很



转载请注明地址:http://www.yulinbing999.net/mnabwh/11510.html
  • 上一篇文章:
  • 下一篇文章:
  • 热点文章

    • 没有热点文章

    推荐文章

    • 没有推荐文章