软件测试经典例子
软件测试-测试用例的经典例子
一、等价类划分
问:某程序规定:
分析题目中给出和隐含的对输入条件的要求: (1)整数 (2)三个数 (3)非零数 (4)正数
(5)两边之和大于第三边 (6)等腰 (7)等边
如果 a、 b 、 c满足条件( 1 ) ~ ( 4 ),则输出下列四种情况之一:
1)如果不满足条件(5),则程序输出为
3)如果只有两条边相等、即满足条件(6),则程序输出为
三角形
4)如果三条边都不相等,则程序输出为
覆盖有效等价类的测试用例:
a b c 覆盖等价类号码 3 4 5 (1)--(7) 4 4 5 (1)--(7),(8) 4 5 5 (1)--(7),(9) 5 4 5 (1)--(7),(10) 4 4 4 (1)--(7),(11) 覆盖无效等价类的测试用例:
二、边界值分析法
NextDate函数的边界值分析测试用例
在NextDate函数中,隐含规定了变量mouth和变量day的取值范围为1≤mouth≤12和1≤day≤31,并设定变量year的取值范围为1912≤year≤2050 。
三、错误推测法
测试一个对线性表(比如数组)进行排序的程序,可推测列出以下几项需要特别测试的情况: I. 输入的线性表为空表; II. 表中只含有一个元素; III. 输入表中所有元素已排好序; IV. 输入表已按逆序排好;
V. 输入表中部分或全部元素相同。 四、因果图法
有一个处理单价为5角钱的饮料的自动售货机软件测试用例的设计。其规
格说明如下:若投入5角钱或1元钱的硬币,押下〖橙汁〗或〖啤酒〗的按钮,则相应的饮料就送出来。若售货机没有零钱找,则一个显示〖零钱找完〗的红灯亮,这时在投入1元硬币并押下按钮后,饮料不送出来而且1元硬币也退出来;若有零钱找,则显示〖零钱找完〗的红灯灭,在送出饮料的同时退还5角硬币。
1) 分析这一段说明,列出原因和结果
原因:
1.售货机有零钱找 2.投入1元硬币 3.投入5角硬币 4.押下橙汁按钮 5.押下啤酒按钮 结果:
21.售货机〖零钱找完〗灯亮 22.退还1元硬币
23.退还5角硬币 24.送出橙汁饮料 25.送出啤酒饮料
2)画出因果图,如图所示。所有原因结点列在左边,所有结果结点列在右
边。建立中间结点,表示处理的中间状态。中间结点:
11. 投入1元硬币且押下饮料按钮
12. 押下〖橙汁〗或〖啤酒〗的按钮 13. 应当找5角零钱并且售货机有零钱找 14. 钱已付清
3)转换成判定表: