测试到底有没有价值?有什么样的价值?又体现在哪里?
我们怎么样让测试的价值发挥的更好,更充分?
我一直在思考这个问题……,下面是我的一些个人感悟,供大家阅读参考。
测试到底有没有价值?
最近听到了这样一个故事:
某公司有一个新项目上线,需要公司内用户进行验证。大概流程就是需要公司外部用户提交一种单据,然后由公司内用户进行审批。但是一次又一次审批都失败了,操作过的数据也无法再使用;
每一次失败,企业内的用户都得恳求外部用户帮忙,再次提交数据;而且每次提交数据都需要向银行支付一定的费用;通过不断的代码修复,最终用户提交了6次,整个流程才成功。
过程中给用户带来了很大的困扰和痛苦;出现这种情况,我想一定是没有经过测试或没有经过充分的测试才导致的。
一个好的项目,一定要通过测试,保证软件的质量符合要求之后,才能交付给用户使用;不然就是对用户的不负责任,对公司的不负责任;让第一批用户成为了小白鼠,让公司也失去了用户的信任。
所以测试是否有价值,已经在故事中有了答案。
测试的价值在哪里?
测试的价值,我觉得应该从两个维度去分析。
第一,是从用户的角度看。
当用户使用系统时,
发现系统主要功能存在问题!
发现系统使用起来像蜗牛一样慢!
发现系统太不好使了,太麻烦了,看不懂!
如果是出现上面的问题,一定是功能测试、性能测试、安全性测试、用户体验测试没有做好;
如果这些问题被测试提前发现,而不是遗留给用户;用户使用起来一切OK而且感觉很爽,那我们的价值也就找到了。
总之,我认为测试的价值就是经过我们测试的东西,能够让老板放心,让用户舒心。
第二,是从项目的角度看。
从项目角度,测试的价值就是保证软件的质量;直接的数据表现就是发现的Bug;我们发现的Bug越多,开发就越放心,感觉“嗯,帮我发现了这么多问题,应该差不多了”。其实作为测试来说,我发现的问题越多,对软件的质量就越不放心;
为什么呢?因为Bug越多,证明软件存在的隐患就越多,代码质量是存在问题的。测试一直是以测试发现的bug数量论英雄,其实我觉得除了数量,发现Bug的早晚、严重程度、隐藏深度、Bug类型更能说明一个测试人员的价值。
如何提升测试的价值呢?
日常我们测试的项目都是时间紧急,导致需求或设计都可能存在一定的问题;或是bug或是未考虑周全,或是描述不清。开发写代码过程也会出现遗漏、错误或到了时间节点未进行联调或自测;
所有这些导致的问题都会在测试阶段集中爆发,导致测试80%时间在调试,在验证需求是否实现,验证功能是否正常。也许我们会发现几十个、几百个Bug,但是这些Bug真正发挥测试的价值了吗?我觉得,还没有!不仅没有发挥测试的价值,反而会有两大问题:
1、 导致开发有一种依赖思想;“反正后面测试”,所以在这种思想下,代码的质量就会受到影响。
2、 测试人员疲于补漏;由于表面的bug太多,根本没有时间也没有精力去发现更深层次的bug,更别提用户体验。导致系统的性能、兼容性、用户体验就会出现问题,甚至功能也可能会有问题。
所以对于如果提高测试的价值,我有以下一些经验或想法。不想一一赘述,列于下面供大家参考。
1、 从需求及设计阶段就开始测试,尽早发现需求和设计中存在的问题和漏洞。(即使没有时间或人力在需求阶段投入,也应该在后续阶段,重点对需求及设计进行深入分析,挖掘其漏洞,发现其问题。只要在交付用户之前发现,总比遗漏给用户强过百倍)
2、 深如了解用户需求,站在用户角度思考,提升用户体验。
(多与用户接触,多跟业务方聊天,你会有很多意想不到的收获。因为用户体验不是我们想出来的,而是用户真正体验、使用总结而来的)
原文转自:http://www.testwo.com/blog/7172