黑盒测试例题

更新时间:2024-04-23 21:29:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

黑盒测试用例设计练习题

1、准考证号码

对招干考试系统“输入学生成绩”子模块设计测试用例。招干考试分三个专业,准考证号第一位为专业代号,如: 1-行政专业, 2-法律专业, 3-财经专业。

行政专业准考证号码为:110001~111215 法律专业准考证号码为:210001~212006 财经专业准考证号码为:310001~314015 请划分准考证号码的等价类。

输入条件 行政专业准考证号码 法律专业准考证号码 财经专业准考证号码 序号 输入参数 1 110002 2 3 4 5 6 7 210012 310022 10000 200000 250000 340000 覆盖等价类 输出参数 (1) (2) (3) (4) (5) (6) (7) 输入正确 输入正确 输入正确 输入错误 输入错误 输入错误 输入错误

有效等价类 110001~111215数字串 210001~212006数字串 310001~314015数字串 编号 无效等价类 编号 (4) (5) (6) (7) (1) 负无穷~110000 (2) 111216~210000 (3) 212007~310000 314016~正无穷 2、电话号码

城市的电话号码由两部分组成。这两部分的名称和内容分别是: 1)地区码:以0开头的三位或者四位数字(包括0); 2)电话号码:以非0、非1开头的七位或者八位数字。 假定被调试的程序能接受一切符合上述规定的电话号码,拒绝所有不符合规定的号码,请使用等价分类法来设计它的测试用例。 输入条件 地区码 电话号码 七位数字串 (5) 有效等价类 0开头 三位数字串 四位数字串 非0 and 非1开头 编号 (1) (2) (3) (4) 无效等价类 非0开头 <三位数字串 >四位数字串 以0开头 以1开头 <七位数字串 编号 (7) (8) (9) (10) (11) (12) 八位数字串 序号 输入参数 1 2 3 4 5 6 7 8 9 10 012-8725656 0123-8546523 012-84864878 110-6845316 01-5645642 01111-4552135 012-0464534 012-1455544 012-15454 覆盖等价类 (6) >八位数字串 (13) 输出参数 (1)(2)(4)(5) 输入正确 (1)(3)(4)(5) 输入正确 (1)(2)(4)(6) 输入正确 (7) (8) (9) (1)(2)(10) (1)(2)(11) (1)(2)(12) 输入错误 输入错误 输入错误 输入错误 输入错误 输入错误 输入错误 0123-454514542 (1)(3)(13) 3、保险公司计算保费费率的程序 某保险公司的人寿保险的保费计算方式为:投保额×保险费率

其中,保险费率依点数不同而有别,10点及10点以上保险费率为0.6%,10点以下保险费率为0.1%;而点数又是由投保人的年龄、性别、婚姻状况和抚养人数来决定,具体规则如表1所示。

表1 保险公司计算保费费率的规则

年龄 20~39 6点 40~59 4点 其它 2点 M 5点 性别 F 3点 已婚 3点 婚姻 未婚 5点 抚养人数 1人扣0.5点 最多扣3点 (四舍五入取整) 分析程序规格说明中给出和隐含的对输入条件的要求,列出等价类表(包括有效等价类和无效等价类)。

1) 年龄:一位或两位非零整数,值的有效范围为1~99。 2) 性别:一位英文字符,只能取值‘M’或‘F’。 3) 婚姻:字符,只能取值‘已婚’或‘未婚’。 4) 抚养人数:空白或一位非零整数(1~9)

5) 点数:一位或两位非零整数,值的范围为1~99

根据表1中的等价类表,设计能覆盖所有等价类的测试用例。

输入条件 有效等价类 编号 无效等价类 编号 年龄 1~99整数 (1) 非1~99整数 (9) 性别 ‘M’ (2) 非‘M’and(10)

‘F’ (3) 非‘F’ 婚姻 ‘已婚’ (4) 非‘已婚’and (11) ‘未婚’ (5) 非‘未婚’ 抚养人数 null (6) 非 null and (12) 1~9整数 (7) 非1~9整数 点数 1~99整数 (8) 非1~99整数 (13) 序号 1 2 3 4 5 6 7 输入参数 (50,‘M’,‘已婚’,null) (18,‘F’,‘未婚’,null) (45,‘F’,‘已婚’,8) (101,‘M’,‘已婚’,null) (65,‘H’,‘未婚’,5) (78,‘F’,‘假婚’,null) (88,‘M’,‘已婚’,11) 覆盖等价类 输出参数 (1)(2)(4)(6)(8) 保险率为0.6% (1)(3)(5)(6)(8) 保险率为0.6% (1)(3)(4)(7)(8) 保险率为0.1% (9) (1)(10) (1)(3)(11) (1)(2)(4)(12) 输入错误 输入错误 输入错误 输入错误

4、 输入:用户密码 要求:

1)用户密码为6到8位。 2)必须含有字母和数的组合。

输出: 如正确,输出正确的信息。否则,输出相应的错误信息。 请结合等价类划分法和边界值分析法设计出相应的测试用例。 输入条件 用户密码 有效等价类 6<=位数<=8 包含字母和数字 序号 输入参数 1 1234abcd 2 3 4 5 5、给出某一天(年,月, 日),计算出它的下一天,取值范围为:

年:1000<= year <=3000 月:1<=month <=12 日:1<= day <=31

如 1999年3月4日的下一天是:1999年3月5日

要求:

输入:三个参数(年,月, 日)

输出:如能正确计算,计算出它的下一天, 否则,输出相应的错误信息。 1)使用C语言编写程序实现

2)请结合等价类划分法和边界值分析法设计出相应的测试用例,并依照测试用例对所编写的程序进行测试。 (1)代码如下:

1234a 123456789df abcdedf 1234567 覆盖等价类 输出信息 (1)(2) (3) (4) (1)(5) (1)(6) 输入正确 输入错误 输入错误 输入错误 输入错误 编号 无效等价类 位数>8 (2) 不包含数字 不包含字母 编号 (3) (4) (5) (6) (1) 位数<6 #include void main() { int year; int month,maxmonth=12; int day,maxday; printf(\请输入年份:(1000~3000)\ scanf(\ if(year<1000 || year>3000) {

printf(\输入错误!请从新输入!\\n\ printf(\请输入年份:(1000~3000)\ scanf(\ }

printf(\请输入月份:(1~12)\scanf(\if(month<1 || month>12) {

printf(\输入错误!请从新输入!\\n\ printf(\请输入月份:(1~12)\ scanf(\ }

if(month==4||month==6||month==9||month==11) maxday=30; else if(month==2) { if(year@0==0 || year%4==0) maxday=28; else maxday=29; } else maxday=31; printf(\请输入日份:(1~31)\ scanf(\ if(day<1 || day>maxday) { printf(\输入错误!请从新输入!\\n\ printf(\请输入日份:(1~31)\ scanf(\

}

}

if(month==maxmonth && day==maxday) { year=year+1; month=1; day=1; }

else if(day==maxday) { month=month+1; day=1; } else day=day+1;

printf(\下一天是%d年%d月%d日\(2) 输入条件 年 月 日 有效等价类 编号 无效等价类 <1000 >3000 <1 >12 <1 >31 编号 (4) (5) (6) (7) (8) (9) 1000<=year<=3000 (1) 1<=month<=12 1<=day<=31 (2) (3) 边界测试用例 序号 1 2 3 4 5 6 7 输入参数 20000228 9990105 30010312 20120012 20111323 20180300 20560432 输出结果 2000年3月1日 输入错误!请从新输入! 输入错误!请从新输入! 输入错误!请从新输入! 输入错误!请从新输入! 输入错误!请从新输入! 输入错误!请从新输入! 覆盖等价类 (4) (5) (1)(6) (1)(7) 输出结果 输入错误!请从新输入! 输入错误!请从新输入! 输入错误!请从新输入! 输入错误!请从新输入! 等价类测试用例 序号 输入参数 1 2 3 4 5 6 7 20020105 9910502 30120515 20120015 20141325 20070400 20010632 (1)(2)(3) 2002年1月6日 (1)(2)(8) 输入错误!请从新输入! (1)(2)(9) 输入错误!请从新输入!

6、 假设中国某航空公司规定:

中国去欧美的航线所有座位都有食物供应。每个座位都可以播放电影。 中国去非欧美的国外航线都有食物供应,只有商务仓可以播放电影。 中国国内的航班的商务仓有食物供应,但是不可以播放电影 。

中国国内的航班的经济仓除非飞行时间大于2小时就有食物供应,但是不可以播放电影。

使用决策表法设计测试用例。 航 线 中国去欧美? 中国去非欧美的国外? 中国国内的航班 商务仓 飞行时间>2小时 1 Y N N -- -- √ √ 美国 2 N Y N Y -- √ √ 亚洲,商务仓 3 N Y N N -- 4 N N Y Y -- 5 N N Y -- Y √ -- 中国,飞 行 时 间 >2 6 N N Y N -- -- -- 中国 服 食物供应 务 播放电影 测 试用例 √ √ -- -- 亚中洲 国,商 务 仓 7、有一个处理单价为5角钱的饮料的自动售货机软件测试用例的设计。其规格说明如下:若投入5角钱或1元钱的硬币,押下〖橙汁〗或〖啤酒〗的按钮,则相应的饮料就送出来。若售货机没有零钱找,则一个显示〖零钱找完〗的红灯亮,这时在投入1元硬币并押下按钮后,饮料不送出来而且1元硬币也退出来;若有零钱找,则显示〖零钱找完〗的红灯灭,在送出饮料的同时退还5角硬币。

要求:1)列出原因和结果,画出因果图 2)根据因果图,建立判定表 3)根据判定表设计测试用例数据 (1) 原因:

1----投5角硬币 2----投1元硬币 3----按【啤酒】按钮 4----按【橙汁】按钮

5----售货机有零钱(灯亮) 6----售货机没有零钱(灯暗) 结果

21----出饮料

22----出饮料,找零钱 23----不出饮料,退钱

因果图如下: 11,12为中间节点

E 1 V 2 3 V 4 11 12 ∧ 21 22 ∧ 5 ∧ 23 6 (2)(3)

1 条 件 1 2 3 4 5 6 11 12 动 21 作 22 23 测 试用例 Y N Y N -- -- Y Y √ -- -- 投5角硬币按啤酒按钮 2 Y N N Y -- -- Y Y √ -- -- 投5角硬币按橙汁按钮 3 N Y Y N Y N Y Y √ √ -- 投1元硬币选择啤酒按钮售货机有零钱 4 N Y Y N N Y Y Y -- -- √ 5 N Y N Y Y N Y Y √ √ -- 投1元硬币选择橙汁按钮售货机有零钱 6 N Y N Y N Y Y Y -- -- √ 投1元硬币选择橙汁按钮售货机没有零钱 投1元硬币选择啤酒按钮售货机没有零钱

本文来源:https://www.bwwdw.com/article/ip8p.html

Top