一、合理分配测试时间


  1. 测试时间为有限资源时,精准判断测试策略优先级(测试中期时,需快速确定优先级,定位Bug或二轮测试某个功能)

  2. 测试中期时发现的较严重级别的Bug,定位判断时明确“止损”点(即研究15分钟,若未出成果,停止定位,得出的碎片信息作为附件上传)

  3. 提交Bug组织语言干净准确,忌冗余。(项目紧张阶段,可以提前给Bug归类并自制模板,如垂直类型的Bug可以直接copy其重现步骤、测试数据等)

  4. 测试时间充足时,可以找出一些非典型的Bug并练习定位,有利于提升测试知识技能。


二、通过bug评估发现更多信息


缺陷提供了被测软件的新信息。利用新信息对相关领域测试,可以发现一些额外信息,完善缺陷报告;同时也可发现相似Bug,使测试对软件质量更了解。

后续测试切入点是评估当前缺陷的风险。

  • 风险暴露的可能性,即评估风险转化为实际失败的概率。测试需找到容易暴露的多个用户场景

  • 风险暴露的损失,估算失败造成的损失。

吸取教训作新设计时考虑到:严重缺陷要求更广泛的测试,多角度思考测试覆盖。可以运用产品元素来保证覆盖面。


  • 结构:测试需要从文件级别(构成软件的各种文件)、代码级别(语句、函数、类等)考虑覆盖。

  • 功能:测试需要确保覆盖每个功能的相关细节,检查缺陷的影响范围

  • 数据:测试需要将数据分类 ,并执行每个数据分类下的Case。

  • 接口:软件所提供的操作界面。如用户界面、系统界面、API、编程平台SDK、数据导入和导出功能 。

  • 平台:软件依赖的软硬件环境。包括硬件平台、网络环境、OS、软件依赖的其他软件和网络服务等。

  • 操作:软件可能的使用方式 。测试将功能组合成流程,用不同顺序方式调用。多角度挖掘用户scene

  • 时间:软件与时间相关的元素。很多错误与时间或时序有关。如多线程死锁、多线程竞态条件、客户端与服务端时间不同步引发的冲突等。