软件测试必须要知道十个关键点

软件测试必须要知道十个关键点

软件测试行业急需大牛

  记得2年前刚毕业的时候听说了软件测试这个行业,当时也去百度仔细进行了一番搜索,评价基本千篇一律的看好。看好的原因在于,专家认为未来的互联网市场用户体验至上,而产品质量与用户体验有紧密的联系,自从近年产品经理岗位火了之后,人人都是产品经理的概念深入人心,但其实人人也都要具有质量观念,出色的产品质量可以提供更好的用户体验。

  说被专家一席话打动有些牵强,当时就是因为自己的开发功底不足,退而求其次选择了软件测试一家公司谋生。而生活中很多事都要亲历了才知道究竟是怎样~其实,国内的软件测试行业没有书中以及媒体描述的那么好,规范、流程都需要各个公司摸索制定。流程是否规范,对测试的能力要求高低,自动化与接口测试完善与否,很多工具平台或软件是否能够重复使用,这都说明着该公司在软件测试方面的积累。

  但凡接触过软件企业的人应该都知道,从公司的生态链来说,软件测试属于最下游,这也决定了很多情况必须要被动接受。即使某个测试攻城狮理论知识丰富,辨识风险能力强,在测试中独具慧眼,但是一个产品需求的变更就可以让他傻眼,接着很努力的去适应这种节奏。也许他抱怨,也许他吐槽,背后将产品、运营骂了N多遍,但是毫无用处,产品运营主导必然是趋势,测试主导是做不出好产品的。

  还有一个点的确争论了很久,就是关于出现问题承担责任的问题。如果产品上线没有问题那是皆大欢喜,如果有问题,几乎所有人都会把测试拉上一起垫背。他们会认为就算上游环节各种问题,但是到了测试这里就应该“合理把控”各种,将风险点罗列出来并告知各责任人,有时候一句“为什么没有测出来”竟让测试同学无言以对。

  看了以上的内容,各位看官会觉得戾气太重,的确,测试的地位往往很尴尬,有种“别人狂欢有我毛事,出了问题我很悲催”之感。但不可否认的是,一个好的测试人员非常难得,懂业务懂代码,写的了接口测试,做的了性能优化,还能协调各种矛盾。所以好的测试可以成为好的开发,可以成为好的产品,可以成为好的运维……

  一,软件测试要做什么?

  在每个软件企业,测试人员参与的需求主要来自以下三个方面:

  1,产品经理——针对产品本身,也许是功能优化,也许是模块新增

  2,产品运营——将产品配合运营活动展开,用于拓展新用户及提升用户活跃度

  3,技术人员(开发主导)——技术改造或代码重构

  所以,对于测试人员来说,需要了解产品想怎么玩儿,用户会怎么玩儿,运营想要用户怎么玩儿,开发怎么实现,测试怎么进行,何为技术难点。我去!这是要把PD、运营、开发集于一身的节奏啊!

  我相信在很多公司最了解产品的一定是测试,因为随着测试人员尽早的参与整个流程,就会接触所有的角色。所以总结下来基本就是测试比产品了解开发,比开发了解运营,比运营了解产品,还要最了解测试及产品质量。

  二,软件测试工程师的几个阶段

  各行各业的成员都有不同的能力阶段,软件测试也不例外。依据每个人的能力不同,所做的事情是有明显区分的,这里列出了常见的几种进行分析。

  手工测试(纯黑盒测试),即使发现缺陷的能力非常强,也会很快遇到发展瓶颈,因为任何手工测试的风险都较高,并且投入产出比不尽如人意。项目变更后,能够复用的只有个人经验,对团队建立与知识沉淀是几乎无帮助的。(经验可以分享?谁能保证人人适用呢。)

  黑盒自动化测试,稍微进阶了一些,提高了效率,可以做到定时自动执行,但是维护自动化脚本也是相当痛苦的,就算可以将一些代码抽象为公共模块,却无法避免前端的改动。目前产品功能自动化测试都基于比较浅的层次,所以是否开展、以多大范围开展是个值得仔细权衡的点。

  接口测试(包括接口自动化),这算比较深入的,有时感觉当一个测试真正抛开了前端页面,从接口层面开始介入测试时,他才真的成为了一名合格的测试攻城狮。此时可做的内容如满天繁星,想象空间无穷。

软件测试必须要知道十个关键点