当前位置:文档之家› 黑盒测试例题

黑盒测试例题

黑盒测试用例设计练习题

1、准考证号码

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

1-行政专业,

2-法律专业,

3-财经专业。

行政专业准考证号码为:110001~111215

法律专业准考证号码为:210001~212006

财经专业准考证号码为:310001~314015

请划分准考证号码的等价类。

2、电话号码

城市的电话号码由两部分组成。这两部分的名称和内容分别是:

1)地区码:以0开头的三位或者四位数字(包括0);

2)电话号码:以非0、非1开头的七位或者八位数字。

假定被调试的程序能接受一切符合上述规定的电话号码,拒绝所有不符合规定的号码,请使用等价分类法来设计它的测试用例。

某保险公司的人寿保险的保费计算方式为:投保额×保险费率

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

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

分析程序规格说明中给出和隐含的对输入条件的要求,列出等价类表(包括有效等价类和无效等价类)。

1) 年龄:一位或两位非零整数,值的有效范围为1~99。 2)

性别:一位英文字符,只能取值‘M ’或‘F ’。 3) 婚姻:字符,只能取值‘已婚’或‘未婚’。 4) 抚养人数:空白或一位非零整数(1~9)

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

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

4、输入:用户密码

要求:

1)用户密码为6到8位。

2)必须含有字母和数的组合。

输出:如正确,输出正确的信息。否则,输出相应的错误信息。

请结合等价类划分法和边界值分析法设计出相应的测试用例。

5、给出某一天(年,月,日),计算出它的下一天,取值范围为:

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

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

要求:

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

输出:如能正确计算,计算出它的下一天,

否则,输出相应的错误信息。

1)使用C语言编写程序实现

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

(1)代码如下:

#include

void main()

{

int year;

int month,maxmonth=12;

int day,maxday;

printf("请输入年份:(1000~3000)");

scanf("%d",&year);

if(year<1000 || year>3000)

{

printf("输入错误!请从新输入!\n");

printf("请输入年份:(1000~3000)");

scanf("%d",&year);

}

printf("请输入月份:(1~12)");

scanf("%d",&month);

if(month<1 || month>12)

{

printf("输入错误!请从新输入!\n");

printf("请输入月份:(1~12)");

scanf("%d",&month);

}

if(month==4||month==6||month==9||month==11) maxday=30;

else if(month==2)

{

if(year%400==0 || year%4==0)

maxday=28;

else

maxday=29;

}

else

maxday=31;

printf("请输入日份:(1~31)");

scanf("%d",&day);

if(day<1 || day>maxday)

{

printf("输入错误!请从新输入!\n");

printf("请输入日份:(1~31)");

scanf("%d",&day);

}

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日",year,month,day); }

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

中国去欧美的航线所有座位都有食物供应。每个座位都可以播放电影。

中国去非欧美的国外航线都有食物供应,只有商务仓可以播放电影。

中国国内的航班的商务仓有食物供应,但是不可以播放电影。

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

使用决策表法设计测试用例。

7、有一个处理单价为5角钱的饮料的自动售货机软件测试用例的设计。其规格说明如下:若投入5角钱或1元钱的硬币,押下〖橙汁〗或〖啤酒〗的按钮,则相应的饮料就送出来。若售货机没有零钱找,则一个显示〖零钱找完〗的红灯亮,这时在投入1元硬币并押下按钮后,饮料不送出来而且1元硬币也退出来;若有零钱找,则显示〖零钱找完〗的红灯灭,在送出饮料的同时退还5角硬币。

要求:1)列出原因和结果,画出因果图

2)根据因果图,建立判定表

3)根据判定表设计测试用例数据

(1)

原因:

1----投5角硬币

2----投1元硬币

3----按【啤酒】按钮

4----按【橙汁】按钮

5----售货机有零钱(灯亮)

6----售货机没有零钱(灯暗)

结果

21----出饮料

22----出饮料,找零钱

23----不出饮料,退钱

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

(2)(3)

黑盒测试用例设计实例

黑盒测试用例设计实例 引言 黑盒测试是一种软件测试的方法,它从用户的角度出发,不考虑内部的实现细节,仅仅根据软件的输入和输出来进行测试。黑盒测试用例的设计是黑盒测试的关键环节之一,本文将通过一个实例来详细介绍如何进行黑盒测试用例的设计。 任务概述 本文将以一个电子商务网站为例,以说明如何进行黑盒测试用例的设计。电子商务网站通常包含用户注册、商品浏览、购物车管理、下单支付等功能模块。我们将分别设计这些功能模块的黑盒测试用例。 电子商务网站功能模块 1.用户注册 2.商品浏览 3.购物车管理 4.下单支付 用户注册功能模块测试 输入验证测试 1.输入有效的用户名、密码、邮箱和手机号,验证是否成功注册。 2.输入无效的用户名,如为空、包含特殊字符或长度超过限制,验证是否提示 相应的错误信息。 3.输入无效的密码,如长度过短、仅由数字组成,验证是否提示相应的错误信 息。 4.输入无效的邮箱,如格式不符合要求,验证是否提示相应的错误信息。 5.输入无效的手机号,如格式不符合要求,验证是否提示相应的错误信息。

功能测试 1.验证成功注册后,是否能够正常登录。 2.验证注册后的用户信息在数据库中是否正确保存。 3.验证重复注册同一用户名是否被拒绝。 商品浏览功能模块测试 页面加载测试 1.验证首页是否正确加载,包括顶部导航栏、商品分类、轮播图等元素是否显 示正常。 2.验证商品详情页是否正确加载,包括商品名称、价格、图片、评价等元素是 否显示正常。 搜索功能测试 1.在搜索框中输入关键字,验证是否能够正确展示相关的商品结果。 2.输入不存在的关键字,验证是否能够提示“未找到相关商品”的信息。 列表排序测试 1.验证按价格升序排序时,商品列表是否按价格由低到高的顺序排列。 2.验证按价格降序排序时,商品列表是否按价格由高到低的顺序排列。 分类过滤测试 1.选择一个商品分类,验证筛选后的商品列表是否只显示该分类的商品。 2.选择多个商品分类,验证筛选后的商品列表是否包含这些分类的商品。 购物车管理功能模块测试 添加商品测试 1.将一个商品添加到购物车,验证购物车中是否正确显示该商品的名称、价格 和数量。 2.将多个商品添加到购物车,验证购物车中是否正确显示总金额和商品数量。

黑盒测试经典例题(精选8篇)

黑盒测试经典例题(精选8篇) 【篇一】黑盒测试经典例题 实验一黑盒测试 (一)实验目的 1.掌握用边界值方法设计测试用例和执行测试的过程; 2.掌握用等价划分方法设计测试用例和执行测试的过程; 3.掌握用决策表方法设计测试用例和执行测试的过程。 (二)实验内容 测试“Ne某tDate”函数。Ne某tDate返回输入日期后面的那个日期。变量年、月、日都 具有整数值,且满足如下条件: C1:1912≤年份≤2050 C2:1≤月份≤12 C3:1≤日期≤31 (三)实验步骤 用熟悉的语言(如C语言)编写实现该函数的功能,并用如下方法设计测试用例,进行黑盒测试。参考源代码: #include intne某tDate(intyear,intmonth,intday);

voidmain() { /intyear,month,day; ne某tDate(2051,12,30); } intne某tDate(intyear,intmonth,intday) { /某如果还有明天,返回1; 如果输入不合法,返回-1; 某/ witch(month) { cae1:cae3:cae5:cae7:cae8:cae10: if(day==31) { day=1; month=month+1; } ele

day=day+1; break; cae4:cae6:cae9:cae11: if(day==30) { day=1; month=month+1; } ele day=day+1; break; cae12: if(day==31) { day=1; month=1; year=year+1; if(year==2022) printf("2022iover");

黑盒测试用例设计实例

黑盒测试用例设计实例 黑盒测试是一种测试方法,它不考虑程序的内部结构,而是从程序的输入和输出来测试程序的正确性。黑盒测试用例设计是黑盒测试的重要组成部分,下面将以一个实例来介绍黑盒测试用例设计的过程。 实例:某在线购物网站的注册功能 1. 功能描述 该网站提供用户注册功能,用户需要填写用户名、密码、确认密码、邮箱等信息,注册成功后可以登录网站进行购物。 2. 测试目的 测试该注册功能是否能够正常运行,用户能否成功注册并登录网站。 3. 测试用例设计 3.1 正常情况下的测试用例 用例编号:TC001

用例名称:正常注册 前置条件:用户未注册过该网站 测试步骤: 1. 打开网站首页 2. 点击“注册”按钮 3. 填写用户名、密码、确认密码、邮箱等信息 4. 点击“注册”按钮 5. 检查页面是否跳转到登录页面 6. 使用注册时填写的用户名和密码登录网站 7. 检查是否能够成功登录网站 预期结果:用户能够成功注册并登录网站

用例名称:用户名已存在的情况下注册 前置条件:用户已经注册过该网站 测试步骤: 1. 打开网站首页 2. 点击“注册”按钮 3. 填写已经存在的用户名、密码、确认密码、邮箱等信息 4. 点击“注册”按钮 5. 检查页面是否提示“该用户名已存在,请重新输入” 预期结果:用户不能成功注册,页面提示“该用户名已存在,请重新输入” 3.2 异常情况下的测试用例

用例名称:密码和确认密码不一致的情况下注册 前置条件:用户未注册过该网站 测试步骤: 1. 打开网站首页 2. 点击“注册”按钮 3. 填写用户名、密码、确认密码、邮箱等信息,其中密码和确认密码不一致 4. 点击“注册”按钮 5. 检查页面是否提示“密码和确认密码不一致,请重新输入” 预期结果:用户不能成功注册,页面提示“密码和确认密码不一致,请重新输入” 用例编号:TC004

黑盒测试试题及答案

1:程序规定;输入三个整数作为三边的边长构成三角形。当此三角形为一般三角形、等腰三角形、等边三角形时,分别作计算。用等价类划分方法为该程序进行测试用例设计。 2:现有一个学生标准化考试批阅试卷,产生成绩报告的程序。其规格说明如下:程序的输入文件由一些有80个字符的记录组成,所有记录分为3组,如图: 1、标题:改组只有一个记录,其内容是成绩报告的名字。 2、各题的标准答案:每个记录均在第80个字符处标以数字2。该组的记录: 第一个记录:第1~3个字符为试题数(1~999)。第10~59个字符是1~50题的标准答案(每个合法字符表示一个答案)。 第二个记录:是第51~100题的标准答案。 ……. 3、学生的答案:每个记录均在第80个字符处标以数字3。每个学生的答卷在若干个记录中给出。 学号:1~9个字符 1~50题的答案:10~59。当大于50题时,在第二、三、……个记录中给出。 学生人数不超过200,试题数不超过999。 程序的输出有4个报告: a)按学号排列的成绩单,列出每个学生的成绩、名次。 b)按学生成绩排序的成绩单。 c)平均分数及标准偏差的报告 d)试题分析报告。按试题号排序,列出各题学生答对的百分比。 1. 黑盒测试的具体技术方法有哪些? 答案: 黑盒测试的具体技术方法主要有边界值分析法、等价类划分法、因果图法、决策表测试法、场景法等。 2. 分析如何选择恰当的黑盒测试方法。 答案: 通常在决定测试策略时,有以下的参考原则: ①在任何情况下都必须采用边界值分析法。这种方法设计出的测试用例发现程序错误的能力最强。 ②必要时采用等价划分类方法补充测试用例。 ③采用错误推断法再追加测试用例。 ④对照程序逻辑,检查已设计出的测试用例的逻辑覆盖程度。如果没有达到要求的覆盖标准,则应当在补充更多的测试用例。

黑盒测试习题解答

一、等价类划分 问:某程序规定:"输入三个整数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 。

2.投入1元硬币 3.投入5角硬币 4.押下橙汁按钮 5.押下啤酒按钮 结果: 21.售货机〖零钱找完〗灯亮 22.退还1元硬币 23.退还5角硬币 24.送出橙汁饮料 25.送出啤酒饮料 2)画出因果图,如图所示。所有原因结点列在左边,所有结果结点列在右边。建立中间结点,表示处理的中间状态。中间结点: 11. 投入1元硬币且押下饮料按钮 12. 押下〖橙汁〗或〖啤酒〗的按钮 13. 应当找5角零钱并且售货机有零钱找 14. 钱已付清 3)转换成判定表:

黑盒测试用例设计练习题

“软件测试实训”报告 题目黑盒测试用例设计练习题 学院电子信息工程学院 专业计算机科学与技术 班级 1201 班 学号 121040220109 学生姓名孟晓博 指导教师张惠娥王振铎 西安思源学院教务处制 二〇一五年

一. 题目 (3) 二.要求 (3) 三.源代码 (3) 四.测试 (5) 1.测试范围 (5) 2.等价值划分法 (5) 3.边界值分析法 (6) 序号1测试截图:序号2测试截图: (7) 序号3测试截图:序号4测试截图: (7) 序号5测试截图:序号6测试截图: (7) 序号7测试截图: (7)

一. 题目 黑盒测试用例设计练习题 二.要求 给出某一天(年,月,日),计算出它的下一天,取值范围为: 年:1000<= year <=3000 月:1<=month <=12 日:1<= day <=31 如1999年3月4日的下一天是:1999年3月5日 要求: 输入:三个参数(年,月,日) 输出:如能正确计算,计算出它的下一天, 否则,输出相应的错误信息。 1)使用C语言编写程序实现 2)请结合等价类划分法和边界值分析法设计出相应的测试用例,并依照测试用例对所编写的程序进行测试。 三.源代码 #include void main() { int year; int month,maxmonth=12; int day,maxday; printf("请输入年份:(1000~3000)"); scanf("%d",&year); if(year<1000 || year>3000) { printf("输入错误!请从新输入!\n"); printf("请输入年份:(1000~3000)"); scanf("%d",&year); } printf("请输入月份:(1~12)"); scanf("%d",&month); if(month<1 || month>12) {

白盒和黑盒测试用例测试题目

一、问题:报表日期等价类划分和边界值分析设某公司要打印2001~2005年的 报表,其中报表日期为6位数字组成,其中,前4位为年份,后两位为月份。 二、请结合等价类方法给出getNumDaysInMonth(int month, int year)方法 的测试用例,其中getNumDaysInMonth方法根据给定的月份和年份返回该月份的总天数。 三、阅读下列说明,回答问题 1 至问题 3,将解答填入答题纸的对应栏内。 [说明]在 ERP(企业资源计划)系统中,“计划管理”模块的流程图如下: [问题1]因果图法是功能测试案例设计方法中的一种,简述利用因果图导出测试用例需要经过哪几个步骤? [问题2]根据题干中的流程图,利用因果图法,找出哪些是正确的输入条件,那些是正确的输出结果,将下列描述的字母编号填入表中。

a.可以进行销售发货管理 b.可用库存不满足销售需求(有可用库存) c.可用库存不满足销售需求(无可用库存) d.可用库存满足生产需求 e.可用库存不满足生产需求 f.可用库存不满足生产需求(无可用库存) g.可以进行 MPS 运算 h.可用库存满足销售需求 i.生成主生产计划 j.生成计划采购单 k.生成计划生产定单 l.可以进行 MRP 运算 [问题3]下图画出“计划管理”模块的因果图。请把问题2中列出的输入条件和输出结果的字母编号填入到空白框中相应的位置。

四、有一个在线购物的实例,用户进入一个在线购物网站进行购物,选购物品 后,进行在线购买,这时需要使用帐号登录,登录成功后,进行付钱交易,交易成功后,生成订购单,完成整个购物过程。 五、根据如下流程图,写出白盒测试测试用例

黑盒测试用例设计方法案例与练习题

黑盒测试用例设计方法案例与练习题1、等价类 案例 登录功能 用户名和密码登录(以在线考试系统为例) 年龄字段输入 2、网站注册页面年龄输入要求:某网站前台用户注册页面,其中有年龄字段的输入,要求 练习题 三角形 输入三角形三边应为正整数,分别构成非三角形、一般三角形、等腰三角形和等边三角形。 1、需求分析: 1、正整数 2、两边之和大于第三边 3、两边相等 4、三边相等 2

3 2、边界值 案例 登录功能 实例同等价类 年龄字段输入 实例同等价类,边界值设计如下

练习题 保险费率计算 某保险网站的前台计算保费页面,其中有年龄字段的输入,不同的年龄段会使用不同的费率计算标准。 其中: 01-15岁,费率为:10% 16-20岁,费率为:15% 21-50岁,费率为:20%

等价类与边界值综合练习题 1、在某一版的编程语言中对变量名称规格作如下规定:变量名称是由字母开头的,后跟字母或者数字的任意组合构成。编译器能够区分的有效字符数为8个,并且变量名称必须先声明,后使用,在同一声明语句中,变量名称至少必须有一个。 输入条件: 1、变量名称是由字母开头6、变量名称不能重复 2、字母或者数字的组合7、字母大小写敏感 3、有效字符数为8个8、不能使用关键字 4、变量名称必须先声明 5、声明语句中变量名称至少必须有一个

3、有效字 符数为8个[1-8] [1-8] 1 A17 0 0 B11 8 A18 >8 9 B12 6 A19 4、变量名 称必须先声明先声明A20 不声明使用B13 先使用后声明B14 5、声明变量至少为一个声明变量为一个A21 无变量声明B15 声明变量为多个A22 6、变量名 称不能重 复 变量名称不重复A23 变量名称重复B16 7、字母大 小写敏感 字母大小写敏感AbD A24 8、不能使 用关键字 不使用关键字abc A25 使用关键字int B17 2、126邮箱注册 输入条件有效等价类编号无效等价类编号 字符长度[6-18] 1 0 9 118 11 空格12

黑盒测试例题

黑盒测试用例设计练习题 1、准考证号码 对招干考试系统“输入学生成绩”子模块设计测试用例。招干考试分三个专业,准考证号第一位为专业代号,如: 1-行政专业, 2-法律专业, 3-财经专业。 行政专业准考证号码为:110001~111215 法律专业准考证号码为:210001~212006 财经专业准考证号码为:310001~314015 请划分准考证号码的等价类。 2、电话号码 城市的电话号码由两部分组成。这两部分的名称和内容分别是: 1)地区码:以0开头的三位或者四位数字(包括0); 2)电话号码:以非0、非1开头的七位或者八位数字。 假定被调试的程序能接受一切符合上述规定的电话号码,拒绝所有不符合规定的号码,请使用等价分类法来设计它的测试用例。

某保险公司的人寿保险的保费计算方式为:投保额×保险费率 其中,保险费率依点数不同而有别,10点及10点以上保险费率为0.6%,10点以下保险费率为0.1%;而点数又是由投保人的年龄、性别、婚姻状况和抚养人数来决定,具体规则如表1所示。 表1 保险公司计算保费费率的规则 分析程序规格说明中给出和隐含的对输入条件的要求,列出等价类表(包括有效等价类和无效等价类)。 1) 年龄:一位或两位非零整数,值的有效范围为1~99。 2) 性别:一位英文字符,只能取值‘M ’或‘F ’。 3) 婚姻:字符,只能取值‘已婚’或‘未婚’。 4) 抚养人数:空白或一位非零整数(1~9) 5) 点数:一位或两位非零整数,值的范围为1~99 根据表1中的等价类表,设计能覆盖所有等价类的测试用例。

4、输入:用户密码 要求: 1)用户密码为6到8位。 2)必须含有字母和数的组合。 输出:如正确,输出正确的信息。否则,输出相应的错误信息。 请结合等价类划分法和边界值分析法设计出相应的测试用例。 5、给出某一天(年,月,日),计算出它的下一天,取值范围为: 年:1000<= year <=3000 月:1<=month <=12 日:1<= day <=31 如1999年3月4日的下一天是:1999年3月5日 要求: 输入:三个参数(年,月,日) 输出:如能正确计算,计算出它的下一天, 否则,输出相应的错误信息。 1)使用C语言编写程序实现 2)请结合等价类划分法和边界值分析法设计出相应的测试用例,并依照测试用例对所编写的程序进行测试。 (1)代码如下:

黑盒测试实验(大学生软件工程实验)

黑盒测试-实验(2选1) 实验准备: 学习软件测试中的黑盒测试技术,重点掌握各个等价类划分方法以及边界值方法,并完成下面的实验; 实验题目(选择题目1): 1. 问题描述 NextData函数有三个输入变量month、day、year(month、day和year 均为整数值,并且满足:1≤month≤12、1≤day≤31、1900≤year ≤2050。),分别作为输入日期的月份、日、年份,通过程序可以输出下一天的日期。例如,输入为2005年11月29日,则该程序的输出为2005年11月30日。 请用边界值测试方法设计测试用例。并对你所设计的测试用例的不足之处加以说明。 程序界面 一、年: (1) 使输入刚好等于最小的整数。 输入:1990 预期的输入:1900 (2) 使输入刚好等于最大的整数。 输入:2050

预期的输入:2050 (3) 使输入刚好小于最小的整数。 输入:1989 预期的输入:“错误——无效输入” (4) 使输入刚好大于最大的整数。 输入:2051 预期的输入:“错误——无效输入” 二、月: (5) 使输入刚好等于最小的整数。 输入:1 预期的输入:1 (6) 使输入刚好等于最大的整数。 输入:12 预期的输入:12 (7) 使输入刚好小于最小的整数。 输入:0 预期的输入:“错误——无效输入” (8) 使输入刚好大于最大的整数。 输入:13 预期的输入:“错误——无效输入” 三、日: (9) 使输入刚好等于最小的整数。 输入:1 预期的输入:1 (10) 使输入刚好等于最大的整数。 输入:31 预期的输入:31 (11) 使输入刚好小于最小的整数。 输入:0 预期的输入:“错误——无效输入” (12) 使输入刚好大于最大的整数。 输入:32 预期的输入:“错误——无效输入” 四、测试用例: 使用(年,月,日)形式: 正确输入: 一、(1900,1,1)、(1900,1,31)、(1900,12,1)、(1900,12,31)、(2050,1,1)、(2050,1,31)、(2050,12,1)、(2050,12,31)。 错误输入: 一、(1989,1,1)、(1989,1,31)、(1989,12,1)、(1989,12,31)、(2051,1,1)、(2051,1,31)、(2051,12,1)、(2051,12,31)。

黑盒测试因果图练习题

黑盒测试因果图练习题 在软件开发和测试的过程中,黑盒测试是一种常用的测试方法。它 是基于功能需求,对软件系统进行测试,而不考虑内部的实现细节。 黑盒测试的一个重要工具就是因果图,用于分析和设计测试用例。在 本文中,我们将通过几个练习题来探讨黑盒测试因果图的应用。 问题一:某在线书店购买书籍的过程中存在以下几个环节:用户登录、书籍查询、购物车添加、付款、订单生成。请根据以上环节,绘 制一个完整的黑盒测试因果图。 解答一:根据问题描述,我们可以将以上环节作为因果图中的节点,通过因果关系来连接它们。例如,用户登录是购买书籍的前提条件, 所以应该在登录节点上标注一个箭头指向书籍查询节点。同样地,书 籍查询是购物车添加的前提条件,所以应该在书籍查询节点上标注一 个箭头指向购物车添加节点。以此类推,连接所有环节,最终得到一 个完整的黑盒测试因果图。 问题二:某手机应用程序的登录页面包括以下几个元素:用户名输 入框、密码输入框、登录按钮。请根据以上元素,绘制一个简化的黑 盒测试因果图。 解答二:根据问题描述,我们可以将以上元素作为因果图中的节点,并通过因果关系来连接它们。例如,用户名输入框和密码输入框是登 录按钮的前提条件,所以应该分别在它们的节点上标注箭头指向登录 按钮节点。同样地,登录按钮是登录成功的前提条件,所以应该在登

录按钮节点上标注箭头指向登录成功节点。通过这样的连接,我们可 以得到一个简化的黑盒测试因果图。 问题三:某电商平台的搜索功能存在以下几个关键字:手机、电脑、服装、家具。请根据以上关键字,绘制一个黑盒测试因果图。 解答三:根据问题描述,我们可以将以上关键字作为因果图中的节点,并通过因果关系来连接它们。例如,搜索手机是搜索功能的前提 条件,所以应该在搜索手机节点上标注一个箭头指向搜索功能节点。 同样地,搜索电脑、服装、家具也都是搜索功能的前提条件,所以应 该分别在相应节点上标注箭头指向搜索功能节点。通过这样的连接, 我们可以得到一个黑盒测试因果图。 通过以上几个练习题的解答,我们可以看到黑盒测试因果图在测试 过程中的价值。它能够帮助测试人员全面而系统地分析和设计测试用例,从而提高测试效率和测试覆盖率。同时,因果图也能够帮助开发 人员更好地理解系统的功能需求,从而提升软件的质量和用户体验。 总之,黑盒测试因果图是软件开发和测试过程中一项重要的工具。 通过合理使用因果图,我们能够更好地分析和设计测试用例,提高测 试效率和质量。希望以上练习题的解答能够对读者理解和应用黑盒测 试因果图有所帮助。同时,也希望读者在实际的软件开发和测试过程 中能够灵活运用因果图,发现问题并及时解决,为用户提供更好的软 件产品。

黑盒测试技术-经典习题

一、等价类 例题:某企业招工,要求报名者的出生日期在1970年1月~1990年12月之间,企业的人事管理系统需要输入报名者的出生日期,规定日期由6位数字字符组成,前4位表示年,后2位表示月。出生年月不在规定范围内的,系统将拒绝接受,并显示“年龄不合格”的出错信息。试用等价类划分法设计测试用例,来测试系统的“年龄检查功能”。 解答: 第一步:划分等价类、列出等价类表 可以划分为3个有效等价类,7个无效等价类,如下表所示。 第二步:确立测试用例 首先为每一个等价类规定一个唯一的编号。 设计测试用例,尽可能多的覆盖有效等价类。在表中列出了3个有效等价类,编号为①、

二、边界值 1、用边界值分析法,假定1=1并且X<=10,如果用边界值分析法,X在测试中应该取__B_值。 A.1,10 B.0,1,10,11 C.1,11 D.1,5,10,11 三、决策表: 例题:某学生成绩管理系统,要求“对平均成绩在90分以上,且没有不及格科目的学生,或班级成绩排名在前5位的学生,在程序中将学生的姓名用红色标识”, 请建立该场景的判定表。 1、确定规则的个数。若条件数为n,规则个数应为2的n次方。 这里有3个条件,每个条件有两个取值,故应有23=8种规则。 2、列出所有的条件项和动作项 3、填入条件项、动作项,得到初始判定表。 4、合并相似规则,得到优化后判定表。 若表中有两条以上规则具有相同的动作,并且在条件项之间存在极为相似的关系,便可以合并。

黑盒测试案例

黑盒测试案例 黑盒测试是一种测试方法,旨在检验软件或系统的功能性,而不考虑其内部的实现细节。下面是一个黑盒测试的案例,以展示如何设计和执行一个黑盒测试。 案例:网上购物系统 1. 注册功能测试 测试目标:验证用户能够成功注册一个新账户。 测试步骤: a. 打开网上购物系统主页。 b. 点击注册按钮。 c. 输入一个有效的用户名、密码和电子邮件地址。 d. 点击提交按钮。 e. 检查系统是否显示注册成功的提示信息。 f. 尝试使用新账户登录系统,检查是否成功登录。 预期结果:系统应该成功注册新账户并允许用户使用该账户登录。 2. 商品搜索功能测试 测试目标:验证用户能够成功搜索并找到所需商品。 测试步骤:

a. 打开网上购物系统主页。 b. 在搜索框中输入一个商品关键词。 c. 点击搜索按钮。 d. 检查系统是否正确显示与关键词相关的商品列表。 预期结果:系统应该能够根据用户输入的关键词正确显示相关的商品列表。 3. 购物车功能测试 测试目标:验证用户能够成功将商品添加到购物车并完成购买。 测试步骤: a. 打开网上购物系统主页。 b. 浏览商品列表,选择一个商品。 c. 点击“加入购物车”按钮。 d. 检查系统是否将商品添加到购物车中。 e. 点击“去结算”按钮。 f. 输入有效的配送地址和支付信息。 g. 点击“提交订单”按钮。 h. 检查系统是否显示订单成功提交的提示信息。 预期结果:系统应该能够正确添加商品到购物车,并在用户完成订单时显示成功提交订单的提示信息。 4. 优惠券功能测试 测试目标:验证用户能够成功使用优惠券并享受相应折扣。

测试步骤: a. 打开网上购物系统主页。 b. 选择需要购买的商品并添加到购物车。 c. 输入有效的优惠券编号。 d. 点击“应用优惠券”按钮。 e. 检查系统是否正确计算并显示优惠后的价格。 预期结果:系统应该能够根据用户输入的优惠券编号正确计算并显示折扣后的价格。 5. 支付功能测试 测试目标:验证用户能够成功完成支付流程。 测试步骤: a. 打开网上购物系统主页。 b. 选择需要购买的商品并添加到购物车。 c. 点击“去结算”按钮。 d. 输入有效的配送地址和支付信息。 e. 点击“提交订单”按钮。 f. 选择一种有效的支付方式并输入相应的信息。 g. 点击“确认支付”按钮。 h. 检查系统是否显示支付成功的提示信息。 预期结果:系统应该能够正确处理用户的支付信息,并显示支付成功的提示信息。

白盒测试和黑盒测试试题库

设计题 1、下面是选择排序的程序,其中datalist是数据表,它有两个数据成员:一是元素类型为Element的数组V,另一个是数组大小n。算法中用到两个操作,一是取某数组元素V[i]的关键码操作getKey ( ),一是交换两数组元素内容的操作Swap( ):: void SelectSort ( datalist & list ) { //对表list.V[0]到list.V[n-1]进行排序, n是表当前长度。 for ( int i = 0; i < list.n-1; i++ ) { int k = i; //在list.V[i].key到list.V[n-1].key中找具有最小关键码的对象 for ( int j = i+1; j < list.n; j++) if ( list.V[j].getKey ( ) < list.V[k].getKey ( ) ) k = j; //当前具最小关键码的对象 if ( k != i ) Swap ( list.V[i], list.V[k] ); //交换 } } (1) 试计算此程序段的McCabe复杂性; (2) 用基本路径覆盖法给出测试路径; (3) 为各测试路径设计测试用例。 (1) McCabe环路复杂性 = 判定节点数 + 1 = 5 (2) 测试路径数等于圈复杂度,即测试路径有5条: ①③ ①②⑤⑧…… ①②⑤⑨…… ①②④⑥…… ①②④⑦…… (3) 为各测试路径设计测试用例: 路径①③:取n = 1

路径①②⑤⑧……:取n = 2, 预期结果:路径⑤⑧③不可达? 路径①②⑤⑨……:取n = 2, 预期结果:路径⑤⑨③不可达 路径①②④⑥⑤⑧③: 取n = 2, V[0] = 2, V[1] = 1, 预期结果:k = 1, V[0] = 1, V[1] = 2 路径①②④⑥⑤⑨③: 取n = 2, V[0] = 2, V[1] = 1, 预期结果:k = 1, 路径⑨③不可达 路径①②④⑦⑤⑧③: 取n = 2, V[0] = 1, V[1] = 2, 预期结果:k = 0, 路径⑧③不可达 路径①②④⑦⑤⑨③: 取n = 2, V[0] = 1, V[1] = 2, 预期结果:k = 0, V[0] = 1, V[1] = 2 2、根据下面给出的规格说明,利用等价类划分的方法,给出足够的测试用例。“一个程序读入三个整数。把此三个数值看成是一个三角形的三个边。这个程序要打印出信息,说明这个三角形是三边不等的、是等腰的、还是等边的。” 解答: 设三角形的3条边分别为A,B,C。如果它们能够构成三角形的3条边,必须满足:A>0,B>0,C>0,且A+B>C,B+C>A,A+C>B。 如果是等腰的,还要判断A=B,或B=C,或A=C。 如果是等边的,则需判断是否A=B,且B=C,且A=C。

黑盒测试和白盒测试部分阶段性测试题

1.如图显示某程序的逻辑结构。试为它设计足够的测试用例,分别实现对程序的判定覆盖、条件覆盖和条件组合覆盖。(参阅课件“第三章白盒测试及其实例设计(第二节路经分析测试).ppt”) 答案: 覆盖种类需满足的条件测试数据期望结果 判定覆盖A>1, B=0 A=2, B=0 执行S1 A>1, B¹0或 A£1, B=0或 A£1, B¹0 A=2, B=1或 A=1, B=0或 A=1, B=1 执行S2 条件覆盖以下四种情况各出现一 次 A>1 B=0 A=2,B=0 执行S1 A£1B¹0A=1,B=1 执行S2 条件组合覆盖A>1, B=0 A=2, B=0 执行S1 A>1, B¹0A=2, B=1 执行S2 A£1, B=0A=1, B=0 执行S2 A£1, B¹0A=1, B=1 执行S2 2、有二元函数f(x,y),其中x∈[1,12],y∈[1,31];请分别写出该函数采用基本边界值分析法和健壮性边界值分析法设计的测试用例。(参阅课本,第 5.1边界值分析部分的内容) 答:基本边界值分析法:{ <1,15>, <2,15>, <11,15>, <12,15>, <6,15>, <6,1>, <6,2>, <6,30>, <6,31> } 健壮性边界值分析法:{ <0,15>,<1,15>, <2,15>, <11,15>, <12,15>,<13,15> <6,15>, <6,0>,<6,1>, <6,2>, <6,30>, <6,31> <6,32>}

3. 用边界值测试法设计测试用例:

某程序要求输入三个整数x、y、z,分别作为长方体的长、宽、高,x、y、z的取值范围在2~20之间,计算长方体的体积。请给出健壮性边界值分析的测试用例。 (参阅课本P73,第5.2健壮性边界值分析部分) 4.设一个控制流图如下,请给出环形复杂度和基本测试路径。(参阅课件“第三章白盒测试及其实例设计(第二节路经分析测试).ppt”中的“3.2节路径分析测试”部分)

实验七黑盒测试之场景法测试实验[参考答案解析]

实验七黑盒测试之场景法测试实验 1.1 实验目的 1、通过对简单程序进行黑盒测试,熟悉测试过程,对软件测试形成初步了解,并养成良好的测试习惯。 2、掌握黑盒测试的基础知识,能熟练应用场景法进行测试用例的设计。1.2 实验平台 操作系统:Windows 7或Windows XP 1.3 实验内容及要求 1、练习1 软件系统几乎都是用事件触发来控制流程的,事件触发时的情景便形成了场景,而同一事件不同的触发顺序和处理结果就形成事件流。场景法就是通过用例场景描述业务操作流程,从用例开始到结束遍历应用流程上所有基本流(基本事件)和备选流(分支事件)。下面是对某IC卡加油机应用系统的基本流和备选流的描述。 基本流A;

备选流: (1)使用场景法设计测试案例,指出场景涉及到的基本流和备选流,基本流用字母A表示,备选流用题干中描述的相应字母表示。 场景1:A 场景2:A、B 场景3:A、C 场景4:A、D 场景5:A、E (2)场景中的每一个场景都需要确定测试用例,一般采用矩阵来确定和管理测试用例。如下表所示是一种通用格式,其中行代表各个测试用例,列代表测试用例的信息。本例中的测试用例包含测试用例、ID、场景涤件、测试用例中涉及的所有数据元素和预期结果等项目。首先确定执行用例场景所需的数据元素(本例中包括账号、是否黑名单卡、输入油量、账面金额、加油机油量),然后构建矩阵,最后要确定包含执行场景所需的适当条件的测试用例。在下面的矩阵中,V 表示有效数据元素,I表示无效数据元素,n/a表示不适用,例如C01表示“成功加油”基本流。请按上述规定为其它应用场景设计用例矩阵。 测试用例表

黑盒测试习题02

习题02 0501 用等价类划分法设计8位长数字类型用户名登录操作的测试用例,应该分成( )个等价区间。 A. 2 B. 3 C. 4 D. 6 输入数据预期结果 合法 位数不足 位数过长 abcdefgh 非法字符 0502 输入数据预期结果 !@#$%^&() 合法 (无字符)位数过短 12736…2179(共256位) 位数过长 /?|\ 非法字符 0503 输入数据预期结果 20 合法 13 年龄小于范围 41 年龄大于范围 abcd 非法字符 0504 某工厂招工,规定报名者年龄应在20周岁——39周岁之间,即出生年月不得早于1960年7月,不晚于1979年6月。报名程序具有自动检验输入数据的功能,如果出生年月不属于 输入数据预期结果 1966.06 合法 1960.06 时间过早 1980.01 时间过晚 一九六五年七月非数字

19777 少于6位 多余6位 大于12 小于1 0505 新浪邮箱名,其输入要求如下: 1. 4~16个字符 2. 支持英文小写、数字、下划线 3. 不支持全部为数字或下划线 输入数据预期结果 qq_fhg 合法 全为数字 ______ 全为下划线 @#¥%……&* 非法字符 0个不可为空 fwhflwenfklwjwjfilwjksfm 字符大于16 1df 字符小于4 AAAAAAAA 全为大写 0506用等价类划分法设计下面的测试用例:有一个报表系统,要求用户输入要处理的报表的日期,假设日期的范围为2000年1月到2020年12月。如果用户输入的日期不在这个范围内,则显示错误码信息,并且此系统规定日期由年月六位数字组成,前4为代表年,后两位代表月。 输入数据预期结果 合法 时间过早 时间过晚 abng2432 非法字符 月份小于1 月份大于12 20001 长度小于6 长度大于6 2)根据1)中的等价类表,设计能覆盖所有等价类的测试用例。要求包括输入数据和预期输出,并指出各个测试用例所能符合的等价类编号 0507 NextDate 函数包含三个变量:month 、day 和year ,函数的输出为输入日期后一天的日期。例如,输入为2006年3月7日,则函数的输出为2006年3月8日。要求输入变量month 、day 和year 均为整数值,并且满足下列条件:

黑盒测试作业参考答案

第三章黑盒测试参考答案 (注意:答案仅供参考,若有误,请自行修改。) 1、某保脸公司计算保险费率。 计算方式为10点及10点以上保险费率为%, 10点以下保脸费率为%;而点数又是由投保人的年龄、性别、婚姻状况和抚养人数来决定,具体规则如下表所示。其中,年龄有效输入范围为1-100;抚养人数可输入“无”或1-9之间的整数。 使用等价类划分进行测试用例设计。 参考答案: (D 通过对程序功能的分析,其等价类表如下所示:

⑵设计测试用例表,覆盖等价类

2、NextDate 函数。 该函数要求输入三个变量month、day和year,输出该日期之后一天的日期。其中year的取值范围为:1900-2079。如果输入的日期组合不合法,则显示“无效的输入日期”。 使用等价类划分进行测试用例设计。 参考答案: (1)通过对程序功能的分析,其等价类表如下所示: (2)设计测试用例表,覆盖等价类。

3、P62,习题7。 参考答案略。 4、某软件的一个模块的需求规格说明书中描述:

(1)年薪制员工:严重过失,扣年终风脸金的4%;过失,扣年终风险金的 2% o (2)非年薪制员工:严重过失,扣当月薪资的8%;过失,扣当月薪资的 4% o 请绘制出因果图和判定表,并给出相应的测试用例。 参考答案: (D 根据程序的规格说明,原因和结果如下: 原因:C1:年薪制员工。(1:是年薪制员工;0:非年薪制员工) C2:严重过失 C3:过失 结果:e1:扣年终风险金的4% e2:扣年终风险金的2% e3:扣当月薪资的8% e4:扣当月薪资的4% (2)因果图:略 ⑶决策表:

讲课黑盒测试练习题答案

讲课黑盒测试练习题答案

等价类划分方法: 1.设有一个档案管理系统,要求用户输入以年月表示的日期。假设日期限定在1990年1月~2049年12月,并规定日期由6位数字字符组成,前4位表示年,后2位表示月。现用等价类划分法设计测试用例,来测试程序的"日期检查功能"。 1)划分等价类并编号,下表等价类划分的结果 输入等价类有效等价类无效等价类 日期的类型及长度①6位数字字符②有非数字字符 ③少于6位数字字符 ④多于6位数字字符 年份范围⑤在1990~2049之间⑥小于1990 ⑦大于2049 月份范围⑧在01~12之间⑨等于00 ⑩大于12 2)设计测试用例,以便覆盖所有的有效等价类在表中列出了3个有效等价类,编号分别为①、⑤、⑧,设计的测试用例如下: 测试数据期望结果覆盖的有效等价类 200211 输入有效①、⑤、⑧3)为每一个无效等价类设计一个测试用例,设计结果如下: 测试数据期望结果覆盖的无效等价类

95June 无效输入② 20036 无效输入③ 2001006 无效输入④ 198912 无效输入⑥ 200401 无效输入⑦ 200100 无效输入⑨ 200113 无效输入⑩ 2.输入:用户密码 要求: 1)用户密码为6到8位。 2)必须含有字母和数的组合。 输出:如正确,输出正确的信息。否则,输出相应的错误信息。 请结合等价类划分法设计出相应的测试用例。 输入条件有效等 价类 编号无效等 价类 编号 用户密码6<=位 数<=8 (1)位数<6 (3) 位数>8 (4)包含字 母和数 (2)不包含 数字 (5)

字不包含 字母 (6) 序号输入参数覆盖 等价 类 输出 信息 1 1234abcd (1) (2)输入正确 2 1234a (3)输入 错误3 123456789df (4)输入 错误 4 abcdedf (1) (5)输入错误 5 1234567 (1) (6)输入错误 边界值分析方法: 1.NextDate函数的边界值分析测试用例 在NextDate函数中,隐含规定了变量mouth和变量day的取值范围为1≤mouth≤12和1≤day≤31,并设定变量

相关主题
文本预览
相关文档 最新文档