QA 这个职位在中国有前途么?
QA还是很有前途的。
目前国内QA的工作面很广。web上点鼠标的是QA,linux上写脚本的是QA,编写单元测试的是QA,负责工具开发的是QA,推广TDD或者敏捷的也是QA。
正是因为QA这一统一的称呼,以至于让人经常混淆QA的概念,并且对QA的工作妄加评论。
根据QA的工作类型区分前途是比较合适的。
1、黑盒测试工程师。
这类比较常见,低端的比如web上测试页面的。高端的,比如linux下启动apache测试服务的。使用黑盒测试的技术去检测质量。质量来源于开发,而不是测试,所以他们只能检测而不能提高质量。
这类工程师的工作,目前正在被不断的挤压,随着自动化的发展,这部分的工作讲越来越少。所以人员也是越来越少。但是始终是不可缺少的。
不幸的是,目前这部分人是国内最多的,所以这部分竞争很激烈。已经是红海了。
目前国内的大多数中小型公司都是采用黑盒测试和人海战术来保证质量的,根源是这些公司的QA规划不合理,技术也相对浅薄,优秀的人员,这样的公司也留不住。所以QA的发展缓慢。
在这些公司工作,最重要的是了解业务。
如果接触不到产品的核心环节,比如代码、数据、业务细节,那么这类工程师最周会面临外包的危险。
大公司也会倾向于使用外包。
2、自动化测试工程师
使用qtp,selenium,watir,或者是其他的技术框架来自动化测试工作的。在*unix上做自动化工作的,比如编写shell脚本,或者其他的脚本,也是属于此类。
因为自动化在回归阶段可以节省人力,可以有效的对产品的质量进行度量,并且可以不断的累积,结合覆盖率统计,或者需求覆盖统计等手段,可以很好的保证产品线的开发质量。所以自动化是很重要的技术。
大公司一般都有这样的工作和人员配备。
不过前端的自动化,和后端的自动化,仍旧有一些弊病。很多公司倾向于使用分层自动化去解决不同层面的质量问题。
这部分相对有点技术含量,大公司招人,也是必考的内容。相对来说,有点前途。
但是一旦自动化方案稳定了,那么这类人也会面临职业发展困境。只不过目前自动化仍然在不断发展,这个问题暴露的不是很隐蔽。
这个领域的工程师将来会两极分化,一部分转向自动化工具的研发,一部分转向自动化case的维护。
3、白盒测试工程师
这部分人主要做代码分析,审核,编写必要的单元测试,并关注代码的各种覆盖率情况。
跟开发走的很近,可以尽早的发现bug,并能较好的适应产品的变化。
在敏捷模式中,是很重要的一个角色。这部分人也做单元测试,或者推TDD模式等。
白盒测试目前的技术还不是很全面和成熟,里面有价值的内容其实也很多。还有待进一步发展。
通过深入到代码层的测试工作,QA和开发可以实现很多的紧密配合,有助于及时保证业务质量,所以这部分工程师是很有价值的。
4、测试架构师
负责规划辅助测试的各种工具和平台。基本上是全能的。并能对自动化,技术改进和测试理论有很好的贡献。属于大牛级别。比如研究封装开源的框架,或者开发新技术,来提高QA的测试效率和保证质量覆盖。 不过这个职位将来会比较尴尬,可能会并到测试工具开发工程师中,或者在对应的工具开发团队担任管理。
这个职位,将来会死掉。企业不需要太多的title。。
5、性能测试工程师
国内的黄金职业,技术相对专业,但是精通了基本可以一劳永逸。性能测试的理论基本跟开发技术关联不大,所以还是很稳当的。
6、安全测试工程师
严格来说不算QA,虽然QA里面有做这个的,但是专业理论要求较高,跟开发技术的关联性也不是太大,具备通用性,所以也是很黄金的。
7、测试管理
去做QA的管理角色,比如带项目,QA数据统计和分析。带团队等。自然也是很黄金的了。
对于大部分公司来说,职位并不是严格的,很多人可能是一职多能。
发展方向主要有以下几种
1、走QA技术路线,测试分析,自动化,白盒,或者专心走性能测试,安全测试,测试规划等。
2、走RD技术路线,转行做研发。这个例子也很多。开发肯定比QA更可靠。 已经有不少先例了。
3、走管理路线。有管理爱好的,可以往这个方向发展。
4、走业务路线。去做产品经理,规划产品设计。也是蛮不错的职位。
5、开发测试工具,测试解决方案,提供测试服务。类似于51Testing和博为峰这样的公司。
====================================分割线================================
最新内容请见作者的GitHub页:http://qaseven.github.io/