软件可靠性测试(转贴)
上一篇 / 下一篇 2007-02-01 10:18:59 / 个人分类:测试用例
航天工业总公司二院204所 周新蕾 缪峥红51Testing软件测试网8My@.v,X
J'AMQ
一、对软件可靠性测试的认识
kF$QR9J7JK^Bl0
,nGm o2O$Xq y01.有关术语
#z1G5o6ej0(1)软件可靠性 在规定条件下,在规定时间内,软件不引起系统失效的概率。该概率是系51Testing软件测试网NIz!S:D @4aL+k.Q
统输入和系统使用的函数,也是软件中存在故障的函数,系统输入将确定是否会遇到存在的故51Testing软件测试网Q%Mj[.v!E,k
障。51Testing软件测试网G0RSSWO'Kb
(2)软件可靠性估计 应用统计技术处理在系统测试和运行期间采集、观察到的失效数据51Testing软件测试网$x$N%G%E7_]6nH%iG.V
,以评估该软件的可靠性。51Testing软件测试网$S/F/hO@ b
(3)软件可靠性测试 在有使用代表性的环境中,为进行软件可靠性估计对该软件进行的
^ K%pk;q t u \:Ubq0功能测试。51Testing软件测试网S/X(M5\ ~v'z4I~
需要说明的是,"使用代表性"指的是在统计意义下该环境能反映出软件的使用环境特性51Testing软件测试网VV;b6{1QK0HI
。51Testing软件测试网M+k f!w%N
51Testing软件测试网4T1VU,Mh
2.软件可靠性测试的目的
H1h6a\C;_)\$I:[7` GN0软件可靠性测试的主要目的有:51Testing软件测试网 F wd&q8P&mm.hov
(1)通过在有使用代表性的环境中执行软件,以证实软件需求是否正确实现。
mg6qs(Gao?0(2)为进行软件可靠性估计采集准确的数据。估计软件可靠性一般可分为四个步骤,即数
#i;cEkM/I~J0据采集、模型选择、模型拟合以及软件可靠性评估。可以认为,数据采集是整个软件可靠性
1Qf5C4`d Ly0估计工作的基础,数据的准确与否关系到软件可靠性评估的准确度。
-tjbK!Z-C)B'Z0(3)通过软件可靠性测试找出所有对软件可靠性影响较大的错误。51Testing软件测试网|`k^Y kB
51Testing软件测试网6ceni Wze*t
3.软件可靠性测试的特点
H3iElf fU0软件可靠性测试不同于硬件可靠性测试,这主要是因为二者失效的原因不同。硬件失效51Testing软件测试网J\1Wv `7BFVb)kx
一般是由于元器件的老化引起的,因此硬件可靠性测试强调随机选取多个相同的产品,统计它
.E9K ?w{e-H3F0们的正常运行时间。正常运行的平均时间越长,则硬件就越可靠。软件失效是由设计缺陷造
ryG,Fp9U8Z4W0成的,软件的输入决定是否会遇到软件内部存在的故障。因此,使用同样一组输入反复测试软51Testing软件测试网2}/PB8pk!~l
件并记录其失效数据是没有意义的。在软件没有改动的情况下,这种数据只是首次记录的不51Testing软件测试网&\}x\REwyI
断重复,不能用来估计软件可靠性。软件可靠性测试强调按实际使用的概率分布随机选择输51Testing软件测试网u4w!R#d#H8p\a
入,并强调测试需求的覆盖面。51Testing软件测试网w.T Ci(CcTI
软件可靠性测试也不同于一般的软件功能测试。相比之下,软件可靠性测试更强调测试
/DOS8tD rL0输入与典型使用环境输入统计特性的一致,强调对功能、输入、数据域及其相关概率的先期
5vd ks0c g*H.Bxy/`0识别。测试实例的采样策略也不同,软件可靠性测试必须按照使用的概率分布随机地选择测
hu)a%^@DLf D)\;UB0试实例,这样才能得到比较准确的可靠性估计,也有利于找出对软件可靠性影响较大的故障。51Testing软件测试网cSP|I)j t
此外,软件可靠性测试过程中还要求比较准确地记录软件的运行时间,它的输入覆盖一般也要
aM&FV&S!{&H6R$Y0大于普通软件功能测试的要求。
2efi;zeyx?'v0对一些特殊的软件,如容错软件、实时嵌入式软件等,进行软件可靠性测试时需要有多种51Testing软件测试网!dW kgk6]yI0bwR
测试环境。这是因为在使用环境下常常很难在软件中植入错误,以进行针对性的测试。51Testing软件测试网w?,yeB y'`VC;a
51Testing软件测试网6i;G~R9V!E|^
4.软件可靠性测试的效果51Testing软件测试网(ct B B8U)L%I:_"QJf
软件可靠性测试是软件可靠性保证过程中非常关键的一步。经过软件可靠性测试的软件51Testing软件测试网"W(K`v2h!K
并不能保证该软件中残存的错误数最小,但可以保证该软件的可靠性达到较高的要求。从工
H&B0[P@+R*B{/UV8_Jy0程的角度来看,一个软件的可靠性高不仅意味着该软件的失效率低,而且意味着一旦该软件失51Testing软件测试网PF1oB2^ c
效,由此所造成的危害也小。一个大型的工程软件没有错误是不可能的,至少理论上还不能证51Testing软件测试网 },pFBG Ch
明一个大型的工程软件能没有错误。因此,保证软件可靠性的关键不是确保软件没有错误,而51Testing软件测试网(O~[qI
是要确保软件的关键部分没有错误。更确切地说,是要确保软件中没有对可靠性影响较大的
)j9M&g
一、对软件可靠性测试的认识
kF$QR9J7JK^Bl0
,nGm o2O$Xq y01.有关术语
#z1G5o6ej0(1)软件可靠性 在规定条件下,在规定时间内,软件不引起系统失效的概率。该概率是系51Testing软件测试网NIz!S:D @4aL+k.Q
统输入和系统使用的函数,也是软件中存在故障的函数,系统输入将确定是否会遇到存在的故51Testing软件测试网Q%Mj[.v!E,k
障。51Testing软件测试网G0RSSWO'Kb
(2)软件可靠性估计 应用统计技术处理在系统测试和运行期间采集、观察到的失效数据51Testing软件测试网$x$N%G%E7_]6nH%iG.V
,以评估该软件的可靠性。51Testing软件测试网$S/F/hO@ b
(3)软件可靠性测试 在有使用代表性的环境中,为进行软件可靠性估计对该软件进行的
^ K%pk;q t u \:Ubq0功能测试。51Testing软件测试网S/X(M5\ ~v'z4I~
需要说明的是,"使用代表性"指的是在统计意义下该环境能反映出软件的使用环境特性51Testing软件测试网VV;b6{1QK0HI
。51Testing软件测试网M+k f!w%N
51Testing软件测试网4T1VU,Mh
2.软件可靠性测试的目的
H1h6a\C;_)\$I:[7` GN0软件可靠性测试的主要目的有:51Testing软件测试网 F wd&q8P&mm.hov
(1)通过在有使用代表性的环境中执行软件,以证实软件需求是否正确实现。
mg6qs(Gao?0(2)为进行软件可靠性估计采集准确的数据。估计软件可靠性一般可分为四个步骤,即数
#i;cEkM/I~J0据采集、模型选择、模型拟合以及软件可靠性评估。可以认为,数据采集是整个软件可靠性
1Qf5C4`d Ly0估计工作的基础,数据的准确与否关系到软件可靠性评估的准确度。
-tjbK!Z-C)B'Z0(3)通过软件可靠性测试找出所有对软件可靠性影响较大的错误。51Testing软件测试网|`k^Y kB
51Testing软件测试网6ceni Wze*t
3.软件可靠性测试的特点
H3iElf fU0软件可靠性测试不同于硬件可靠性测试,这主要是因为二者失效的原因不同。硬件失效51Testing软件测试网J\1Wv `7BFVb)kx
一般是由于元器件的老化引起的,因此硬件可靠性测试强调随机选取多个相同的产品,统计它
.E9K ?w{e-H3F0们的正常运行时间。正常运行的平均时间越长,则硬件就越可靠。软件失效是由设计缺陷造
ryG,Fp9U8Z4W0成的,软件的输入决定是否会遇到软件内部存在的故障。因此,使用同样一组输入反复测试软51Testing软件测试网2}/PB8pk!~l
件并记录其失效数据是没有意义的。在软件没有改动的情况下,这种数据只是首次记录的不51Testing软件测试网&\}x\REwyI
断重复,不能用来估计软件可靠性。软件可靠性测试强调按实际使用的概率分布随机选择输51Testing软件测试网u4w!R#d#H8p\a
入,并强调测试需求的覆盖面。51Testing软件测试网w.T Ci(CcTI
软件可靠性测试也不同于一般的软件功能测试。相比之下,软件可靠性测试更强调测试
/DOS8tD rL0输入与典型使用环境输入统计特性的一致,强调对功能、输入、数据域及其相关概率的先期
5vd ks0c g*H.Bxy/`0识别。测试实例的采样策略也不同,软件可靠性测试必须按照使用的概率分布随机地选择测
hu)a%^@DLf D)\;UB0试实例,这样才能得到比较准确的可靠性估计,也有利于找出对软件可靠性影响较大的故障。51Testing软件测试网cSP|I)j t
此外,软件可靠性测试过程中还要求比较准确地记录软件的运行时间,它的输入覆盖一般也要
aM&FV&S!{&H6R$Y0大于普通软件功能测试的要求。
2efi;zeyx?'v0对一些特殊的软件,如容错软件、实时嵌入式软件等,进行软件可靠性测试时需要有多种51Testing软件测试网!dW kgk6]yI0bwR
测试环境。这是因为在使用环境下常常很难在软件中植入错误,以进行针对性的测试。51Testing软件测试网w?,yeB y'`VC;a
51Testing软件测试网6i;G~R9V!E|^
4.软件可靠性测试的效果51Testing软件测试网(ct B B8U)L%I:_"QJf
软件可靠性测试是软件可靠性保证过程中非常关键的一步。经过软件可靠性测试的软件51Testing软件测试网"W(K`v2h!K
并不能保证该软件中残存的错误数最小,但可以保证该软件的可靠性达到较高的要求。从工
H&B0[P@+R*B{/UV8_Jy0程的角度来看,一个软件的可靠性高不仅意味着该软件的失效率低,而且意味着一旦该软件失51Testing软件测试网PF1oB2^ c
效,由此所造成的危害也小。一个大型的工程软件没有错误是不可能的,至少理论上还不能证51Testing软件测试网 },pFBG Ch
明一个大型的工程软件能没有错误。因此,保证软件可靠性的关键不是确保软件没有错误,而51Testing软件测试网(O~[qI
是要确保软件的关键部分没有错误。更确切地说,是要确保软件中没有对可靠性影响较大的
)j9M&g