银行业务软件测试评价研究
上一篇 / 下一篇 2012-09-17 08:56:38 / 个人分类:测试经验
t?4Ux4EH e0 摘要:运用系统工程方法,结合银行业务软件的特点,为银行业务软件的测试建立指标体系,用层次分析法确定各指标的权重,并用可能-满意度法计算各指标的满意度,最后通过计算综合满意度对测试作出评价。51Testing软件测试网$}'N)Z(]7]x
/P7Y]'rahGLu0 关键词:银行业务软件 软件测试评价
u6Q!T#L)i051Testing软件测试网 Wm8cHl k!_(?而众多的软件系统中,银行业务软件以其高复杂性、高安全性、高准确性、高效率性给软件测试带来了一系列难度,尤其是在测试评价方面,仍然停留在比较初级 的阶段,常见的方法有缺陷走势图、缺陷严重程度分布图等等。这些方法可以很清楚看出软件缺陷的走向和分布情况,对于测试评价有一定帮助。但是这些方法存在 指标量化不够,评价指标过于单一的缺点,重复操作性低,在实际使用中对进行测试结果评价的人员要求很高等问题,从而影响评价的效果。51Testing软件测试网`8_:jV{nP&Fa
[4u$S-L!G0 本文运用系统工程方法为银行业务软件的测试建立指标体系,用层次分析法确定各指标的权重,并用可能-满意度法计算各指标的满意度,最后通过计算综合满意度对测试作出评价。
ts8NL-x:G051Testing软件测试网 k:B@ hbu6f一、评价指标体系建立
] d ?\O} b5h07_Q;GA4]0QN(^ @f0 要对软件测试结果进行评价,软件的行为特性,如可靠性、正确性、健壮性、可扩展性和性能等,是最基本的指标。但由于银行业务软件的行为特性比较抽象,难以量化,不能直接作为评价指标,必须对之建立量化的子指标。在实际测试中最容易量化的就是测试用例数、程序代码行数、问题修改时间、程序响应时间和测试问题数以及数据量、交易量。51Testing软件测试网-{o+A(YGe.{QA-{
51Testing软件测试网:F0?;aX#or y程序响应时间和数据量、交易量可以对程序性能作出评价,而问题数量及问题的修改时间则可以对程序的可靠性、健壮性、可扩展性、正确性进行很好的评价。不 同严重程度的问题对测试结果的影响是不一样的,比如一般问题可能对程序正确性影响不大,而紧急问题却可能导致程序无法运行从而对程序正确性造成严重影响。 所以对于程序正确性的评价必须区分一般问题、重要问题和紧急问题。51Testing软件测试网 S&FT.t7n}z
A2z'Z1z-?#wB0 除了问题的严重程度外,一定测试阶段内程序错误问题的新增数量、关闭数量和总数都是很好的评价指标。总数决定了问题发现是否充分;关闭数量反映了问题修改的速度;新增数量则很容易反映出问题修改的质量。51Testing软件测试网Q7rj,v)WF^stn
51Testing软件测试网tB[w^7n9?每一种数量还要区分绝对数量和相对数量。这是因为在一个100行的程序和一个10000行的程序之间直接比较问题个数是没有意义的。相对数量是指某类问 题数占问题总数的百分比。还有估计相对数量是指某类问题数占估计问题总数的百分比。至于使用绝对数量还是使用相对数量作为评价指标,可视具体情况而定,或 者综合考虑两方面指标。51Testing软件测试网IM]v W
(i\ Go h,s$[7V$n0 除了定出指标外,还需要为这些指标定义满意度范围,从而定义满意度函数。这可以通过历史数据统计和有经验的专家估计来确定。51Testing软件测试网ALQf GLG
51Testing软件测试网?C y?b)Kh根据上述分析结果,结合银行业务软件的特点,将银行业务软件满意度确定为评价的总体目标(O),将其可靠性、健壮性、可扩展性、正确性和性能定为一级指标(即准则层A),然后再进行分解细化,构造出一个评价指标目标树。
#M.PbZX&Y#b0R'lKZk!Dq:a0 1、正确性51Testing软件测试网Vi;D6X)sh9J?
51Testing软件测试网,~4CU0S$v程序的正确性可以用程序错误问题的数量及问题的处理时间来评价。
^/j7fk$o|6e6t_8nA051Testing软件测试网0R:L8\@N-po!Sm!`h程序错误数量主要考虑测试期内新增数量、关闭数量和总数量。51Testing软件测试网TJ1XU*E8?+C
51Testing软件测试网aM^W Pq~2e问题处理时间是指程序错误类的问题从产生到关闭所花费的人力。由于问题的处理必须考虑到修改对象的复杂度,所以还需要评价平均修改时间,也就是处理时间/修改对象的复杂度(本文中采用代码行数)。问题处理时间可以直接标准化后使用,也可以为其定义满意范围。51Testing软件测试网&EZI;I"~)a~-P
51Testing软件测试网+J @etDaE:~j2、健壮性51Testing软件测试网D%@:s1Y}
&y3{q4`X EA*C0 健壮性是指在异常情况下,软件能够正常运行的能力。这一能力的评价在实际中难以量化,但可以通过对异常情况下,软件不能正常运行的情况进行评价。所以对 于健壮性可以采用输入错误、操作错误和环境错误的数量来衡量。由于银行业务软件对输入数据的检查在用户需求中有明确的要求,所以输入错误的情况统一归入程 度错误而作为正确性的评价指标。那么评价程序健壮性的就剩下操作错误数量和环境错误数量两个主要的指标。51Testing软件测试网!K__?doo]8C
g!POZ5A)M1Gs Q0 3、可扩展性
]q5]pm[~q07Y TD:~;jEB;``0 程序的可扩展性主要体现在需求变更的处理上。需求变更包括对已有需求的改变和新需求。需求变更的影响范围和需求变更的修改时间可以对程序的可扩展性进行 很好的评量。实际上需求变更的影响范围也可以通过修改时间来衡量。那么对程序可扩展性进行评价的主要就是需求变更的平均修改时间。51Testing软件测试网 sT\)]O` waMR)`
51Testing软件测试网Ic.H3Tq4、可靠性51Testing软件测试网P\y1Y*TUr
zTEh~1n&T0 凡是测试出现问题(需求变更除外)都认为对程序的可靠性有影响,所以可靠性的评价指标主要就是除了需求变更外的所有问题的数量及问题的平均修改时间。
2E V7yQ~#x.U051Testing软件测试网M)yA/O4}/BU's5、性能
%pr/YnD%Czr[o7Z0$Tz{0B t!o5?A0 对于性能的评价最主要的指标就是程序响应时间。程序响应时间的评价也必须区分绝对时间和相对时间。绝对时间就是指不考虑环境因素影响,而只考虑 程序本身执行的响应时间,比如对于联机测试,程序响应时间控制在5秒以内。相对时间是指考虑环境因素影响,如本底数据量、并发交易量等,对程序响应时间做 相应的平均处理,比如单位本底数据量程序响应时间、单位并发交易量程序响应时间。51Testing软件测试网O-p5I[E["a%Yp i]
51Testing软件测试网DrS+K5F3@ q二、指标权重确定51Testing软件测试网A+B g2|f,E#X
)M+eJ8M8ge Q0 本文采用层次分析法来确定各指标的权重。51Testing软件测试网L6_{f7`kx
51Testing软件测试网d6\;Z)K6RZ*r1、判断矩阵建立
w~?*ZU ^y051Testing软件测试网x-e9QE'|)Tz,{组建专家团对目标树同层次各项指标,按其在上一层指标中的重要性,进行两两间重要程度比较建立判断矩阵:
2x-Z9]4H4Om%Q(w051Testing软件测试网D0Za8b__7u3X2、相对重要程度的计算
*DHTEb.I4G[Z6_'\051Testing软件测试网5|3GNo!`$W gk由于测试评价不需要十分精确的权重计算,所以本文直接采取简单易理解的求和法来计算各指标的相对重要程度。当然也可以直接借助现有的计算软件来进行精确的计算。
I~ yX4HW\051Testing软件测试网8^v n)@.Z^$vz首先将判断矩阵按列归一化:
b{$YhVg s2u_051Testing软件测试网"qb"tH7Z9Pi;Z然后按行求和:
by`z!C01T7~5X^$C3f0 最后再进行归一化:
ufYQM0ii0'Q9AKid'r0 3、一致性检验51Testing软件测试网P$\!uBWm N1K.S
51Testing软件测试网]#Z/[F A/l}由于判断矩阵的产生带有很大主观性,往往出现判断的不一致。所以必须对判断矩阵的一致性进行检验。51Testing软件测试网N!I ?|Q EJ&r~4spB
,Ab1\'r_K/}3`0 首先求取最大特征根:51Testing软件测试网1N;Ai)lO$G(y#?w)f
51Testing软件测试网4e7u8D&dPr0|?计算一致性指标:和一致性比值:
1^J2U2O"b0`9`~f `!w ~ d-N0 如果 ,则该判断矩阵的一致性是可以接受的。51Testing软件测试网4`qEX+u.J p
%Sgrr#g~5th w4Y0 三、满意度计算
D-w-i:c\ ?} ~q._F0