广州软件测试

简体版 繁体版

 时代测试 > 软件测试服务 > 软件测试-测试用例的经典例子

软件测试-测试用例的经典例子

一、等价类划分
问:某程序规定:"输入三个整数 a、 b、 c分别作为三边的边长构成三角形。通过程序判定所构成的三角形的类型,当此三角形为一般三角形、等腰三角形及等边三角形时,分别作计算 … "。用等价类划分方法为该程序进行测试用例设计。(三角形问题的复杂之处在于输入与输出之间的关系比较复杂。)
解:
 分析题目中给出和隐含的对输入条件的要求:
(1)整数
(2)三个数
(3)非零数
(4)正数
(5)两边之和大于第三边
(6)等腰
(7)等边
   如果 a、 b 、 c满足条件( 1 ) ~ ( 4 ),则输出下列四种情况之一:
   1)如果不满足条件(5),则程序输出为 " 非三角形 " 。
   2)如果三条边相等即满足条件(7),则程序输出为 " 等边三角形 " 。
   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 。

mouth
day
year
预期输出
Test1
Test2
Test3
Test4
Test5
Test6
Test7
6
6
6
6
6
6
6
15
15
15
15
15
15
15
1911
1912
1913
1975
2049
2050
2051
1911.6.16
1912.6.16
1913.6.16
1975.6.16
2049.6.16
2050.6.16
2051.6.16
Test8
Test9
Test10
Test11
Test12
Test13
6
6
6
6
6
6
-1
1
2
30
31
32
2001
2001
2001
2001
2001
2001
day超出[1…31]
2001.6.2
2001.6.3
2001.7.1
输入日期超界
day超出[1…31]
Test14
Test15
Test16
Test17
Test18
Test19
-1
1
2
11
12
13
15
15
15
15
15
15
2001
2001
2001
2001
2001
2001
Mouth超出[1…12]
2001.1.16
2001.2.16
2001.11.16
2001.12.16
Mouth超出[1…12]

 

       、错误推测法
        测试一个对线性表(比如数组)进行排序的程序,可推测列出以下几项需要特别测试的情况:

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)转换成判定表:
 
 
五、判定表驱动分析方法
问题要求:”……对功率大于50马力的机器、维修记录不全或已运行10年以上的机器,应给予优先的维修处理……” 。这里假定,维修记录不全优先维修处理均已在别处有更严格的定义。请建立判定表。

解答:

①确定规则的个数:这里有3个条件,每个条件有两个取值,故应有2*2*2=8种规则。

②列出所有的条件茬和动作桩:

 

③填入条件项。可从最后1行条件项开始,逐行向上填满。如第三行是:Y N Y N Y N Y N,第二行是:Y Y N N Y Y N N等等。 

④填入动作桩和动作顶。这样便得到形如图的初始判定表。

 

1

2

3

4

5

6

7

8

功率大于50马力吗?

Y

Y

Y

Y

N

N

N

N

维修记录不全吗?

Y

Y

N

N

Y

Y

N

N

运行超过10年吗?

Y

N

Y

N

Y

N

Y

N

进行优先处理

x

x

X

 

X

 

X

 

作其他处理

 

 

 

X

 

x

 

x

初始判定表

⑤化简。合并相似规则后得到图。

 

1

2

3

4

5

功率大于50马力吗?

Y

Y

Y

N

N

维修记录不全吗?

Y

N

N

-

-

运行超过10年吗?

-

Y

N

Y

N

进行优先处理

x

x

 

X

 

作其他处理

 

 

x

 

x

 

Posted @2007-11-14 11:30:19  阅读(1268)  评论(6)  
最新更新
  • 对于ATM柜员机吐钱事件
  • 软件测试工作流程附件下载
  • 性能计数器解释
  • 开发流程中的词汇
  • 指南:测试用例

  • 最新评论
    昵称验证码
    <内容请勿超出2000个字,快捷键:Ctrl+Enter>
    公司名片1
    广州时代软件测试
    所属行业:互联网
    联系电话:13760727218
    传真号码:020-85520605
    地址:广州天河科韵路18号
    公司网址http://test1.anyp.com
    电子邮件wazh35@126.com
    经营范围: 广州时代软件测试工作室,是由一帮工作于不同工作岗位,拥有各种技术的精英们组成的。 在他们的成员中,有能在基于为各企业建站丰富的经验,为企业的网站做全面的网站测试,从网站建设质量、用户体验、网络营销等等方面对各公司网站进行评估。 在他们的成员中,拥有以时代潮流的技术,及工作二年的测试经验,为各企业提供资深的软件测试服务,为软件双方的验收提交质量评估报告书,帮助企业提高软件
    个人简介

    王海愉
    在受到测试的压迫!
    公司 广州时代软件测试
    群组 软件测试小组
    个人首页 个人首页
    我的相册 我的相册
    给我留言 给我留言
    我的栏目
    *每日一句
    日期
    copyright xk 图片旁的留言提示