01 软件可靠性操作剖面报告.docx
《01 软件可靠性操作剖面报告.docx》由会员分享,可在线阅读,更多相关《01 软件可靠性操作剖面报告.docx(17页珍藏版)》请在冰点文库上搜索。
01软件可靠性操作剖面报告
标识:
RMS-SRDT-{SY1514127,SY1514207}-BG-V1.0-2015
ATM软件
可靠性操作剖面实验报告
北航可靠性与系统工程学院
二〇一五年十二月
ATM软件
可靠性操作剖面实验报告
编写:
林烨(SY1514127)
日期:
12月30日
校对:
王洋洋(SY1514207)
日期:
12月30日
目录
1.系统建模2
2.确定操作剖面2
3.确定输入变量3
3.1插卡3
3.2输入密码3
3.3取款3
3.4查询余额4
3.5转账4
3.6存款5
3.7修改密码5
3.8退卡6
4.对操作进行离散描述6
4.1插卡6
4.2转账6
5.生成测试用例6
6.经验总结6
1.系统建模
被测系统为ATM系统,操作者为用户。
根据生活经验可以知道,用户和ATM系统是双向的关系。
因此,为了是我们的实验更具有工程实践意义和实际参考价值,ATM系统与用户的关系建模如图1所示:
图1ATM系统与用户的关系建模
2.确定操作剖面
按照需求规格说明书并结合生活经验,本小组确定用户对系统的9个操作,它们分别是:
插卡、存款、取款、查询余额、修改密码、转账、缴纳手机费、挂失、和退卡,并根据现实生活的经验分别为每个操作赋予一定的概率。
例如,人们在ATM机上一般较多地执行取款和查询操作,而挂失和修改密码的操作相对较少,所以,我们分别赋予“取款”、“转账”和“查询余额”较高的概率0.2,而分别赋予“挂失”和“修改密码”较小的概率0.05。
最终生成的操作剖面如图2所示。
图2操作剖面的确定
3.确定输入变量
根据9个操作建立14个变量,其中“转账”操作包括“输入密码”、“被转账对方账户”和“转账金额”三个变量;“缴纳手机费”操作包括“输入密码”、“手机号”和“缴纳的手机费用”三个变量。
所有“输入密码”变量均为同一个,具体设置见3.2。
3.1插卡
插卡操作有两个变量,即“插卡”与“输入卡号”。
“插卡”变量设置成布尔型,取值范围为:
true和false。
当用例为true时执行插卡操作;当用例为false时不执行插操作。
“输入卡号”为枚举型,并赋予5个值,分别为:
00000000,11111111,22222222,99999999,777777777。
“插卡”和“输入卡号”的设置界面分别如图3和图4所示.值得一提的是,ATM操作软件的系统内已经默认输入卡号只有三个,即00000000,11111111,和22222222。
所以,当测试用例里出现超出系统默认的三个卡号时,相当于不执行操作,直接看下一个用例。
图3“插卡”设置
图4“输入卡号”设置
3.2输入密码
将“输入密码“变量设为枚举型,对应三张卡号分别赋予3个值,如图5所示,分别为:
000000,111111,222222。
当输入对应卡号的密码时视为输入正确的测试用例;当输入非对应卡号的密码或任意输入6个0到9的数字时视为输入错误的测试用例。
图5“输入密码“设置
3.3取款
对于取款操作采用黑盒测试中的等价类和边界值的方法。
变量的范围设为1到51的枚举型。
注意,这里输入的数值默认乘上100倍后成为真实的数值。
将1到50视为一个等价类,即正确的取款金额。
当TCS软件生成取款变量的值在1到50的范围内时,我们手动输入变量的100倍表示正确的取款金额。
51视为一个等价类,则不满足需求说明书中所提的要求,即“一次性最多可取5000元”,属于错误操作。
3.5为一个等价类,则不满足需求说明书中提到的要求——不能取小数,属于错误操作。
“取款操作”的变量设置如图6所示。
图6“取款“值配置
事实上,取款值可以取整型或者浮点型,但是为了后期(例如增长测试)的测试,我们在此特意用枚举型,目的在于尽快并且尽可能多的发现其中发生的错误。
3.4查询余额
将“查询余额“变量设为浮点类型,取值范围在0到60之间。
事实上,正确的取值应该是整型的0到50之间,同样出于后期测试用例的方便,此处故意设置成浮点型,并且把取款范围超出50的限定额。
“查询余额”的变量设置如图7所示。
图7
“查询余额”的变量设置
3.5转账
将转账操作分解为两个变量,一个为“转账对方账户”,类型为枚举型,取值范围为:
62220200000000,62220200000001,62220200000002。
另一个是“转账金额”,类型为枚举型,此处取9个。
取值范围为0到120,其中1到100的整数是一个等价类,代表10000以内的正确的转账金额;101到120之间的数值是一个等价类,代表超出卡内余额的转账金额;小数部分的数值是一个等价类,代表转账非整数金额。
后两类均不符合需求说明书中规定的要求。
“转账对方账户”和“转账金额”的设置(图中为“转账”)分别如图8和图9所示。
图8“转账对方账号”值配置
注意,在不影响实验操作的前提下,出于方便考虑,所有的账号均用同一个,即“转账对方账号”和“输入卡号是同一个”。
图9“转账金额”的值设置
3.6存款
将存款变量设为枚举型,取值范围为1到120。
其中1到100内的整型为一个等价类,代表相应的存款金额,即100到10000;120为一个等价类,代表超出限定范围的输入存款金额,带小数点的3.5为一个类,代表非100的整数倍金额,不符合需求说明书的要求。
.
图10“存款”值配置
3.7缴纳手机费
将缴纳手机费操作分解为三个个变量——“输入密码”、“输入手机号”和“缴纳手机费”,由于此处的“输入密码对于所有操作都是提供用的,所以在3.2讲过,之后不在赘述。
“输入手机号”,类型为枚举型,取值设置为11111111(10位),2222222222(10位),3333333333(10位),11111111111(11位,1.11111111(带小数点)。
前三个是一个等价类,代表10位有效整数,11111111111(11位)为一类,代表超出需求说明的10位。
1.11111111自成一类,代表带有小数的手机号,也不符合需求说明书中做出的规定。
具体设置详见图11.
另一个是“缴纳手机费”的金额设置。
如图12所示,此处设置成0到60的浮点型。
图11“输入手机号“值配置
图12
“缴纳手机费”值配置
3.8修改密码
“修改密码”设置为枚举型,如图13所示。
000000,111111和222222等6为整型密码为一个等价类类,符合需求说明书要求;55555(5位)和7777777(7位)为一个等价类,属于不足或超出规定位数的一类,不符合需求说明书要求;还有4444.4自成一类,代表具有小数点的不规范密码,也是不符合需求说明书要求的。
图13“修改密码”值配置
3.9挂失
挂失操作需要挂失与否,以及输入卡号。
由于ATM系统已经默认有“挂失”按钮,对于设置是否挂失对试验影响不大。
因为测试用例的结果若为不挂失,相当于不做任何操作,直接进入下一个测试用例。
加之卡号输入均用如3.1所示的值设置。
因此,此处不再附图说明。
3.10吞卡
将“吞卡”变量设置成布尔型,取值范围为:
true和false。
当用例为true时执行吞卡操作;当用例为false时不执行吞卡操作。
设置界面如图14所示。
图14“吞卡”变量配置
3.11退卡
如图15所示,将“退卡”变量设为布尔型,取值范围为:
true和false。
当用例为true时执行退卡操作;当用例为false时不执行退卡操作。
图15
“退卡”值配置
事实上,和挂失的道理类似由于系统本身设置的原因,其实对它不设置也没有影响的,即ATM已经默认,只有单击“退卡”才能进行下一个新的用例测试。
如果测试用例出现“不退卡”,相当于无法再进行下一个测试用例,这是不现实的。
但是出于整个操作系统的完整性,还是要对其进行设置。
4.对操作进行离散描述
4.1插卡
插卡操作只有一个变量插卡。
如图16:
图16插卡操作
4.2查询余额
查询余额操作有两个变量,分别为:
输入密码和查询余额。
如图17所示。
图17查询余额操作
4.3存款
存款操作有三个变量,如图18所示,分别为输入卡号、输入密码和存款。
图18
存款操作
4.4转账
转账操作有3个变量,分别为:
输入密码、转账金额和转账账户。
如图19:
图19转账操作
4.5挂失
如图20所示,挂失有两个变量,即确认挂失和输入丢失的卡号。
图20挂失操作
4.6缴纳手机费
缴纳手机费操作下有3个变量,即输入卡的密码,缴纳手机号,和缴纳的手机费用。
具体设置如图21所示。
图21缴纳手机费
4.7取款
取款的操作下游两个变量,即“取款”和“输入密码”,详见图22.
图22取款操作
4.8退卡
退卡操作如图23所示,相当简单。
图23退卡操作图24修改密码
4.9修改密码
修改密码操作包括2个变量,具体见图24.
5.生成测试用例
用TCS软件生成1000个测试用例,根据使用剖面视图可以知道,存款操作用例约142个,取款操作190个用例,查询余额操作190个用例,修改密码操作约48个用例,转账190个用例,缴纳手机费约142个用例,挂失50个用例。
该1000个测试用例结果均在附件中。
6.经验总结
1.所谓“磨刀不误砍柴工”,根据搭建好的剖面图设置变量不能马虎,因为变量的设置关系到后期的测试用例生成效果。
2.按照照系统-剖面-变量-操作-生成用例的顺序进行软件的操作可避免许多错误。
3.软件建立的为操作剖面而非使用剖面。
使用剖面是在操作剖面的基础上添加时序和限制条件,此次实验并没有考虑到操作的时序问题。
4.不怕失败,要有耐心。
事实上,我们一共做了三遍实验。
前面两遍是在课上做的。
我们第一遍对变量的设置都是按照需求说明书中的正确要求来设置。
但我们后发现很难发现其中的bug,于是我们小组重新设各个变量的值配置。
可能是有些性急,导致我们在做增长试验的时候发现,出现的bug还是哦不够明显。
于是我们果断放弃已经做好的第二次试验,认认真真地研究需求说明书,然后又对变量进行设置。
第三次实验则是在我们写报告的时候,发现截的图不够多。
为了是我们的报告达到标准要求,我们只好向助教申请,再运行一遍数据。
真可谓“命运多舛”!
5.仔细观察并且做好记录。
由于第一次接触软件可靠性试验,所以对ATM操作系统,TCS软件和RSET软件都不熟悉。
但是做的多了,加之认真观察,便可掌握其中的规律。
这次试验的重心除了在于仔细研读需求说明书、耐心操作以外,还有一个最基本却容易被忽略的环节,即及时保存资料。
我们小组由于没有截下足够的图片,因此还得多跑一趟,得不偿失。
总之,本实验难度不大,不过还是很有收获的。
SY1514127林烨SY1514207王洋洋