如同代码是程序员的成果之一,测试报告和质量报告是测试人员的主要成果之一。对于一个好的测试报告,是建立在正确的、足够的测试结果的基础之上,不仅要提供必要的测试结果的实际数据,同时要对结果进行分析,发现产品中问题的本质,对产品质量进行准确的评估。
1.缺陷分析
对缺陷进行分析,确定测试是否达到结束的标准,也就是判定测试是否已达到用户可接受的状态。在评估缺陷时应遵照缺陷分析策略中制定的分析标准,最常用的缺陷分析方法有:
缺陷分布报告,允许将缺陷计数作为一个或多个缺陷参数的函数来显示,生成缺陷数量与缺陷属性的函数,如缺陷在程序模块的横向分布、严重性缺陷在不同的产生原因上的分布等。
缺陷趋势报告,按各种状态将缺陷计数作为时间的函数显示,如缺陷数量在整个测试周期的时间分布。趋势报告可以是累计的,也可以是非累计的,可以看出缺陷增长和减少的趋势;
缺陷年龄报告,是一种特殊类型的缺陷分布报告,显示缺陷处于活动状态的时间,展示一个缺陷处于某种状态的时间长短,从而了解处理这些缺陷的进度情况。
测试结果进度报告,展示测试过程在被测应用的几个版本中的执行结果以及测试周期,显示对应用程序进行若干次迭代和测试生命周期后的测试过程执行结果
同时,也可以在项目结束后进行缺陷分析,以改进开发和测试进程,如:
通过缺陷(每日或每周新发现的缺陷)趋势分析来了解测试的效率,也可根据丢失的Bug数目和发现总的Bug数,可以了解测试的质量。可以根据执行的总测试用例数,计算出每发现一个Bug所需要的测试用例数、测试时间等,对不同阶段、不同模块等进行对比分析。
通过缺陷数量或在模块的分布情况,可以掌握程序代码的质量,如通过对每千行代码所含的Bug数分析,了解程序代码质量。通过缺陷(每日或每周修正/关闭的缺陷)趋势分析开发团队解决Bug的能力或状态
2.产品总体质量分析
对测试的结果进行整理、归纳和分析,一般借助于Excel文件、数据库和一些直方图、圆饼图、趋势图等来进行分析和表示,主要的方法有对比分析、根本原因(Root Cause)查找、问题分类、趋势(时间序列)分析等。
对比分析,软件来执行测试结果与标准输出的对比工作,因为可能有部分的输出内容是不能直接对比的(比如,对运行的日期时间的记录,对运行的路径的记录,以及测试对象的版本数据等),就要用程序进行处理。
根本原因(Root Cause)查找,“分析”是找出不吻合的地方并指出错误的可能起因。
问题分类,“分类”包括各种统计上的分项,例如,对应的源程序的位置,错误的严重级别(提示、警告、非失效性错误、失效性错误等),新发现的还是已有记录的错误。
趋势(时间序列)分析,根据所发现的软件缺陷历史数据进行分析,预测未来情况。
其它统计分析,通过对缺陷进行分类,然后利用一些成熟的统计方法对已有数据进行分析,以了解软件开发中主要问题或产生问题的主要原因,从而比较容易提高软件质量。
转载:http://www.uml.org.cn/Test/201105041.asp