如果存在任何原因导致不需要使用测试结果提供的信息,就没有必要进行测试。测试得到的信息不可靠,也没有必要测试。
1、测试后风险增加
软件行业的经理经常需要做出带风险的决定,通常在获得部分信息的情况下做出决定是比较保险的。但有些时候经测试获得信息可能会增加决定的风险。
1)对项目进行太多测试,可能推迟发布产品而不能及早进入市场;
2)测试提供的信息,开发人员因测试提供的信息,进行的程序修复可能会破坏程序其他部分的运行;
3)测试发现问题,但是并未引起重视进行修复,可能会导致后续的问题。
2、对测试反馈的信息无动于衷
需要解释并使用测试产生的信息。
1) 测试人员提交测试报告后,应对报告进行仔细审核,找到有用的信息;
2) 测试人员不清楚怎么测试,应对他们进行培训;
3) 测试人员不能很好理解软件,应对他们进行培训;
3、因感性而非理性所做的决定
人们存在一种感情倾向,不希望发现自己犯了错误。所以人们会做出与理性使用信息没有关系的决定。
4、不良的测试
考虑不周的测试或者执行过程不佳的测试都属于“不良测试”。这样的测试会让人认为产品的质量高于实际质量,导致提前交付。或者产品质量低于实际质量,导致推迟交付,损失效益。这都是不可取的。
5、产品没有准备好接受测试
有以下几种情况,说明产品尚未准备好接受测试,那么就没有必要进行测试,情况如下:
1) 测试是否有助于解决产品存在的至少一个问题?
2) 是否希望知道该问题的答案?
3) 是否只是漫不经心地对待测试结果?需要对测试发现的问题追根究底。
4) 是否预先和测试人员就通过测试的标准达成一致?
5) 如果不能,怎样才算通过测试?
6) 是否认为测试的结果会替你做出决定?不可能从纯技术的角度做出商业决定。可以使用测试得到的信息来支持商业决策。
7) 测试结果能否是你改变决定?
6、相关常识
1) 既然雇佣测试人员,就要相信他们的测试结果。如果不信任他们,要么是选错了人,要么就需要帮助他们提高可信度。
2) 不能让测试人员代替经理做决定,他们只是提供信息。
3) 不使用测试提供的信息,就最好不要进行测试。
4) 在做出决定时,要冷静并控制好自己的情绪,尽量用理性进行决定。
5) 要对测试数据进行评估。数字本身只是数字。要学会问:获得这一数字的过程是什么?这个数字有何含义?
6) 测试是一项技术开发支持活动,需要和需求、设计、编程、文档、制造及支持过程协调起来。同时要给开发人员必要时间和资源来修复测试中发现的问题。
7) 不要催促测试人员进行测试,测试是非常精细的工作。催促测试人员容易产生危险的有误导性的结果,尤其在测试人员感到害怕、疲劳或变现愤世嫉俗时。
8) 测试经理也需要了解测试过程,所以需要任命有测试经验的人担任测试经理。
9) 很多看起来非理性的决定在不同的价值取向下是理性的。记住这一原则,可以避免经理、测试人员和开发人员之间的许多冲突。
10) 测试产生的信息用途很多,交付产品后进行测试,可以收集对客服和支持人员有用的信息。