码迷,mamicode.com
首页 > 其他好文 > 详细

测试用例

时间:2018-07-28 23:24:02      阅读:243      评论:0      收藏:0      [点我收藏+]

标签:范围   类型   必须   根据   分享图片   alt   处理   没有   结果   

设计尽量少的用例,达到对软件功能尽量多的覆盖

(现在有去用例化的趋势,用思维导图代替)

1.等价类和边界值

2.因果图和判断表

3.正交实验法(需要正交表,忽略)

4.状态图和场景法

 

等价类举例:

假定我们要测试一个两位整数加法器,其功能需求如下。

输入两个两位整数,相加后,结果正确显示。要求如下:

i.输入的整数值在 -99到99之间(包含-99和99)

ii.非法输入应被拒绝,并显示错误信息

 

根据要求,可以大致画出以下的等价类图

技术分享图片

转成以下测试用例

技术分享图片

还可以继续细化:<-99、-99≤数值≤0、0≤数值≤99、数值>99

 技术分享图片

 

 边界值举例:

 使用边界值时,需要注意以下问题。

 首先,应当选取正好等于、刚刚大于或刚刚小于边界的值作为测试数据,重点测试最后一个肯定合法的数据和刚刚超过边界的非法数据

 即,若输入范围为0~50

 则,测试用例应包含-1、0、1、49、50、51

 

因果图举例:

等价类和变价值虽然简单,但是他们一般只考虑单个输入和输出之间的关系

因果图是一种形式化的语言,他不仅描述了原因和结果之间的关系,也描述了各个原因之间、各个结果之间复杂关系的组合。在这里,因就是程序输入的条件,而果就是程序的输出

因果图会用到布尔逻辑运算符(恒等、与、或、非、与非、或非)和约束关系

 布尔逻辑运算符:

1.恒等:如果原因为真,那么结果一定为真

2.或:两个原因中有一个为真时,结果就为真

3.与:只有两个原因都为真,结果才为真

4.非:只有原因为假时,结果才为真

5.或非:先或后非

6.与非:先与后非

 技术分享图片

在因果图中除了结果对原因的依赖之外,各个输入状态之间还可能存在某些依赖关系,称为约束。总共五种约束

E约束:即异约束、排他性约束,原因不能同时为真,但可以同时为假。即一个人不能既是初中生又是高中生但是可以两个都不是

I约束:即或约束、包含性约束,各原因中总有一个为真,也可以同时为真。即你去商场结账可以现金可以刷卡也可以两者合并,但不可以不结账

O约束:即唯一性约束,有且只有两个原因中的一个为真。性别要么男要么女,不会存在不男不女

R约束:即必要性约束,当原因a为真时,原因b必须同时为真,反之则不成立。即某人具有硕士学历(原因a),同时也具有本科学历(原因b)

M约束(结果约束):即强制约束,如果结果a为真,则结果b一定为假;如果结果a为假,则结果b状态不一定。即如果无法输入登录密码(输出a),安全控件运行正常(输出b)。如果无法输入密码,那么控件一定有问题。反过来如果可以输入密码,则不能确定安全控件一定正常

 

因果图测试涉及步骤:1.分析被测应用(输入和输出)、2.确定因果逻辑关系、3.确定约束关系、4.把因果图转化为判定表、5.根据约束条件简化判定表、6.涉及测试用例

因果图应用:

本节我们采用简化版的“货币转换程序”作为案例,假定系统需求如下。

i.输入需要转换的货币类型,只容许输入美元和日元

ii.输入需要转换的人民币金额,必须输数字

iii.如果输入正确,显示对应的外币金额

iv.如果输入货币类型错误,提示“输入货币类型错误”

v.如果输入的需要转换的人民币金额错误,提示“人民币金额输入错误”

具体步骤如下:

(1)分析确定原因(输入)和结果(输出)

从两个输入的角度看,初步分析原因和结果,如下。

原因两个:

c1:输入货币类型。根据需求,可以对c1进行细分

  c11:输入美元

  c12:输入日元

c2:输入人民币金额(金额)

结果三个:

e1:显示对应外币金额

e2:提示“输入货币类型错误”

e3:提示“人民币金额输入错误”

(2)确定逻辑关系

根据需求:

输入货币类型正确(c1),输入人民币金额正确(c2),逻辑与的结果是显示对应的外币金额(e1)

输入货币类型不正确(c1),逻辑非的结果提示“输入货币类型错误”(e2)

输入人民币金额不正确(c2),逻辑非的结果提示“人民币金额输入错误”(e3)

输入货币类型正确(c1)是由输入美元正确(c11)和输入日元正确(c12)逻辑或构成的

(3)确定约束关系

由此得到的因果图如下,

技术分享图片

从需求可知,原因c11和c12不可能同时为真,但可以同时为假,因此满足E约束,这3个结果之间没有约束。带约束的因果图如下:

技术分享图片

(4)把因果图转换为判定表

技术分享图片

(5)根据约束条件简化判定表并给出结果

技术分享图片

(6)设计测试用例

技术分享图片

 

状态图和场景法:

事件触发时的情景便形成了场景,而对事件不同的触发顺序和处理结果就形成了事件流

 

其他的测试类别:

文档测试与安装测试

兼容性测试(纵向兼容性[以往版本]、横向兼容性[其他软件的数据])与易用性测试

测试用例

标签:范围   类型   必须   根据   分享图片   alt   处理   没有   结果   

原文地址:https://www.cnblogs.com/paul2625/p/9383774.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!