测试的自我消灭

测试是一个很尴尬的职业,因为如果你把工作做得近乎完美的时候,就要面临失业。这点与开发不同,固然,如果某天出现了一个根据需求可以自动生成代码的机器,并且开发人员能够完美的实现该机器,那么开发也就面临失业。但是当前技术条件下,开发的失业概率还是要远小于测试。

其实,与其说测试是一个职业,不如说测试是一种思维。这种思维更看重批判性,以发现问题为目的,努力使交付给最终用户的产品缺陷最少。

就具体技能上来说,其实测试和开发的测试技能范围差异不大,几乎可以说技能树是一样的,但是在树的各个分支上加的技能点各自有所偏重。在设计/编码上,开发应当较强;在流程分析/验证上,测试应当强于开发。

测试的全局观

在测试设计上,更应当关注设计方案和编码实现,尤其是较小的改动和有限状态机种增加状态时,对全局的影响。很大一部分原因,是在开发人员设计和实现时,多数情况下,重点考虑的是对当前模块的实现,怎样与上下游模块集成,数据流和业务流的打通,对于之前已经实现的逻辑,尤其是分支逻辑,或者三个环节以前的逻辑,考虑较少。

所以,好的测试,尽量从全链路,全流程,各个主要的分支流程,重点状态节点,考虑测试方案的设计,回归范围。

测试更依赖于经验

发布后的故障,是测试成长必需要缴纳的学费,同时由于测试所涉及的业务范围更广,所以能够有机会遗漏缺陷到线上的机会也更多,所以沉淀和积累的容易出问题的tips就更多,越有经验的测试,越能在短时间内定位一个问题,并提出建议的解决方案。

质量有成本

测试是为了保证质量的一个角色,首先提供给测试这个职业的薪酬自然涵盖在成本中。越完备的测试,越能避免故障遗留到发布以后,但是这也意味着投入的成本越多,为了一个短期内的迭代版本,投入过多的测试其实是浪费。

测试生而为消亡

测试某天把工作做到极致,这个极致其实不是通过自己的努力把缺陷全部消灭在发布之前,而是把质量意识和测试技能,深深地建立在开发的脑海中。那这个时候,测试就可以作为测试工具的开发人员,为方便测试执行而工作的开发。

这种消亡,从短期来说,是纯手工测试的逐步被半自动化/自动化的测试工具替代;从长期来说,是随着质量意识的普遍提高,测试人员转变为测试工具的开发人员,实际上,也就变成了开发人员。

语云:天下本是将军定,不许将军见太平。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值