文档介绍:软件测试方法和技术 第16章 测试和软件质量分析报告
顾进广, ., Professor
******@
%
14
%
EDR
182
%
38
%
90
%
54
%
IMI
82
%
14
%
21
%
47
%
EDL
64
%
20
%
17
%
27
%
IET
140
%
17
%
51
%
72
%
IID
54
%
3
%
28
%
23
%
PLT
87
%
22
%
26
%
39
%
HCI
42
%
4
%
27
%
11
%
MIS
81
%
1
%
20
%
60
%
总计
1330
100%
195
100%
512
100%
623
100%
整理课件
评估系统测试的覆盖程度
对软件需求的估算
基于需求的测试覆盖评估
基于代码的测试覆盖评估
整理课件
测试的评估
软件测试评估主要有两个的目的
量化测试进程,判断测试进行的状态和进度
为测试或质量分析报告生成所需的量化数据,如缺陷清除率、测试覆盖率等。
例子:
测试覆盖项
测试覆盖率指标测试描述
测试结果
界面覆盖
符合需求(界面图标、信息区、状态区)
静态功能覆盖
功能满足需求
动态功能覆盖
所有功能的转换功能正确
正常测试覆盖
所有硬件软件正常时处理
异常测试覆盖
硬件或软件异常时处理(不允许的操作)
测试结束判断
整理课件
对软件需求的估算
假设有R个需求,功能需求的数目为F,非功能需求数为N, 则:R= F + N.
Q1= M/R
其中Q1表示需求的确定性,M是所有复审者都有相同解释的需求数目。
功能需求的完整性Q2:
Q2=Fu/(Ni×Ns)
其中Fu是唯一功能需求的数目,Ni是由规格设计说明书定义的输入个数,Ns是被表示的状态的个数。
考虑非功能需求 :
Q3=Fc/(Fc+Fnv)
其中Fc是已经确认为正确的需求的个数,Fnv是尚未被确认的需求的个数
整理课件
基于需求的测试覆盖评估
假定Tx已执行的测试过程数或测试用例数,Rft是测试需求的总数:
已执行的测试覆盖 = Tx/Rft
假定Ts是已执行的完全成功、没有缺陷的测试过程数或测试用例数。
成功的测试覆盖 = Ts/Rft
整理课件
基于代码的测试覆盖评估
基于代码的测试覆盖评测是对被测试的程序代码语句、路径或条件的覆盖率分析。这种测试覆盖策略对于安全至上的系统来说非常重要。
基于代码的测试覆盖通过以下公式计算:
已执行的测试覆盖 = Tc/Tnc
其中Tc是用代码语句、条件分支、代码路径、数据状态判定点或数据元素名表示的已执行项目数,Tnc(Total number of items in the code)是代码中的项目总数。
整理课件
基于缺陷分析的产品质量评估
缺陷评测的基线
经典的种子公式
基于缺陷清除率的估算方法
软件产品性能评估
整理课件
缺陷评测的基线
为软件产品的质量设置起点,在基线的基础上再设置新的目标,作为对系统评估是否通过的标准
条目
目标
低水平
缺陷清除效率
>95%
<70%
原有缺陷密度
每个功能点 <4
每个功能点 >7
超出风险之外的成本
0%
>=10%
全部需求功能点
<1% 每个月平均值
>=50%
全部程序文档
每个功能点页数 <3
每个功能点页数 >6
员工离职率
每年1 to 3%
每年>5%
整理课件
已测试出的种子Bug (s) 已测试出的非种子Bug (n)
所有的种子Bug (S) 全部的非种子Bug (N)
则可以推出程序的总Bug数为:
N = S * n /s
其中n是所进行实际测试时发现的Bug总数。如果 n = N, 说明所有的Bug已找出来,说明做的测试足够充分。
这种测试是否充分,可以用一个信心指数来表示,即用一个百分比表示,值越大,说明