黑盒测试 白盒测试 题

简介: 习题1 为以下流程图所示的程序段设计一组测试用例,要求分别满足语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、组合覆盖和路径覆盖。 语句覆盖 原则覆盖程序中所有可执行的语句 设计的测试用例如下 编号 输入项 执行语句 ① {x=17,y=6} 执行语句3 ② {x=1,y=-1} 执行语句2 ③ {x=-1.

习题1

为以下流程图所示的程序段设计一组测试用例,要求分别满足语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、组合覆盖和路径覆盖。

语句覆盖

原则覆盖程序中所有可执行的语句

设计的测试用例如下

编号 输入项 执行语句
{x=17,y=6} 执行语句3
{x=1,y=-1} 执行语句2
{x=-1.y=-1} 执行语句1

判定覆盖

覆盖所有的路径

设计的测试用例如下

编号 输入项 覆盖的分支
{x=9,y=11} b->f
{x=15,y=9} y->e
{x=7,y=-1} a->d
{x=-1,y=-1} a->c

条件覆盖

判定的每个条件的可能值至少满足一次

对取值进行标记

判定 条件 取值标记 (true) 取值标记(false)
x>8 and y>5 x > 8 T1 -T1
y>5 T2 -T2
x>16 or y > 10 x > 16 T3 -T3
y > 10 T4 -T4
x > 0 or y > 0 x > 0 T5 -T5
y > 0 T6 -T6

产生测试用例

原则 对产生的的判定中的每个原则都要满足

测试用例 执行路径 覆盖条件 覆盖分支
{x=17, y=11} b->f T1 T2 T3 T4 b分支 f分支
{x=15, y=6} b->e T1 T2 -T3 -T4 b分支 e分支
{x=7,y=4} a->d -T1 -T2 T5 T6 a分支 d分支
{x=-1, y=-1} a->c -T1 -T2 -T5 -T6 a分支 c分支

判定条件覆盖

将判定覆盖和条件覆盖结合,使得判定中的每个条件的所有取值至少满足一次。同时每个判定的结果至少出现一次。将判定覆盖和条件覆盖相结合

结果如下;

测试用例 执行路径 覆盖条件 覆盖分支
{x=17, y=11} b->f T1 T2 T3 T4 b分支 f分支
{x=15, y=6} b->e T1 T2 -T3 -T4 b分支 e分支
{x=7,y=4} a->d -T1 -T2 T5 T6 a分支 d分支
{x=-1, y=-1} a->c -T1 -T2 -T5 -T6 a分支 c分支

组合覆盖

每一个判定的所有可能的条件取值的组合

取值标记

判定 条件 取值标记 (true) 取值标记(false)
x>8 and y>5 x > 8 T1 -T1
y>5 T2 -T2
x>16 or y > 10 x > 16 T3 -T3
y > 10 T4 -T4
x > 0 or y > 0 x > 0 T5 -T5
y > 0 T6 -T6

取分支

序号 条件 取的分支
T1 T2 第一个分支取真
T1 -T2 第一个分支取假
-T1 T2 第一个分支取假
-T1 -T2 第一个分支取假
T3 T4 第二个分支取真
T3 -T4 第二个分支取真
-T3 T4 第二个分支取真
-T3 -T4 第二个分支取假
T5 T6 第三个分支取真
T5 -T6 第三个分支取真
十一 -T5 T6 第三个分支取真
十二 -T5 -T6 第三个分支取假

生成测试用例

测试用例 覆盖组合号 覆盖的路径
{x=17,y=11} 1 and 5 b->f
{x=17,y=9} 1 and 6 b -> f
{x=15,y=11} 1 and 7 b -> f
{x=9,y=6} 1 and 8 b -> e
{x=9, y =4} 2 and 9 a -> d
{x=7, y=-1} 3 and 10 a -> d
{x=7,y=-1} 4 and 11 a -> d
{x=-1, y =-1} 4 and 12 a -> c

路径覆盖

要求路径全部覆盖

测试用例 覆盖组合号 覆盖的路径
{x=17,y=11} 1 and 5 b->f
{x=9,y=6} 1 and 8 b -> e
{x=9, y =4} 2 and 9 a -> d
{x=-1, y =-1} 4 and 12 a -> c

习题2

某城市电话号码由三部分组成,分别是:

地区码—— 空白或三位数字;

前 缀—— 非‘0’或‘1’开头的三位数字;

后 缀—— 4位数字。

假定被测程序能接受一切符合上述规定的电话号码, 拒绝所有不符合规定的电话号码。
请选择适当的黑盒测试方法,写出选择该方法的原因,并使用该方法的步骤,给出测试用例表。

选用的测试

准备选择场景发进行测试,理由如下

  1. 该软件是采用事件触发用来控制流程
  2. 使用场景法较为简单
  3. 该软件逻辑清晰,备选分支不是很多

绘制场景图

编写测试用例

地区码测试

编号 输入 说明
1 空  对应输入地区码为空
2 000 对应数字输入3位数字地区码
3 www 对应输入非数字地区码

前缀测试

编号 输入 说明
1 222 非0 1 开头的三位数字
2 022 0开头三位数字
3 122 1开头三位数字
4 0222 0开头非三位数字
5 1 1开头的非三位数字
6 1w 1开头非数字内容
7 0w 0开头非数字内容
8 34324 非0 1 开头的非三位数字
9 w 非0 1 开头的非数字

后缀测试

编号 输入 说明
1 0000 4位后缀数字
2 0 非4位数字
3 非数字内容

www.iming.info

目录
相关文章
|
7月前
|
测试技术
黑盒测试、白盒测试、灰盒测试的区别和各自的目的
黑盒测试、白盒测试和灰盒测试是软件测试中常用的测试方法。它们的区别和各自的目的如下: 1. 黑盒测试(Black Box Testing): - 黑盒测试是一种功能性测试方法,使用者只关注输入和输出,不考虑内部结构和实现细节。 - 黑盒测试的目的是验证软件功能是否按照需求规格说明书的要求来执行。 - 测试人员不需要了解软件的内部逻辑和代码,只需关注输入和输出的正确性。 - 黑盒测试可通过设计测试用例,模拟用户使用软件的场景,以验证系统的正确性。 2. 白盒测试(White Box Testing): - 白盒测试是一种结构性测试方法,测试人员了解软件的内部结构
300 0
|
10月前
|
测试技术 程序员
软件工程——软件测试(黑盒测试、白盒测试、测试分析报告)
经过前面软件测编码阶段,是不是我们就可以把软件发布出去供用户使用了呢?不是的,为了确保软件不会出现不必要的差错,还需要经过重重测试的。
|
12月前
|
SQL 存储 数据采集
软件测试之测试的分类(重点:黑盒测试、白盒测试、单元测试、集成测试、系统测试)
1. 按照测试对象进行划分 1)界面测试 2)可靠性测试 3)容错性测试 4)文档测试 5)兼容性测试 6)易用性测试 7)软件安装卸载的测试 8)安全测试 9)性能测试 10)内存泄漏测试 2. 按照是否查看代码划分 1)黑盒测试 2)白盒测试 3)灰盒测试 3. 按照开发阶段划分 1)单元测试(结合 V 模型) 2)集成测试 3)系统测试 4)验收测试 5)将上面四种测试方法同 V 模型的阶段进行对应 4. 按照测试实施组织划分 1)α 测试 2)β 测试 3)第三方测试 5. 按照是否运行进行划分 1)静态测试 2)动态测试 6. 按照是否手工划分 1)手工测试 2)自动化测试
820 0
|
测试技术
软件测试面试题:黑盒测试和白盒测试是软件测试的两种基本方法,请分别说明各自的优点和缺点?
软件测试面试题:黑盒测试和白盒测试是软件测试的两种基本方法,请分别说明各自的优点和缺点?
165 0
|
测试技术 程序员 开发者
软件测试面试题:请试着比较一下黑盒测试、白盒测试、单元测试、集成测试、系统测试、验收测试的区别与联系?
软件测试面试题:请试着比较一下黑盒测试、白盒测试、单元测试、集成测试、系统测试、验收测试的区别与联系?
128 0
|
测试技术 程序员 开发工具
软件测试面试题:简述什么是静态测试、动态测试、黑盒测试、白盒测试、α测试 β测试?
软件测试面试题:简述什么是静态测试、动态测试、黑盒测试、白盒测试、α测试 β测试?
141 0
|
测试技术 程序员 开发者
软件测试面试题: 请试着比较一下黑盒测试、白盒测试、单元测试、集成测试、系统测试、验收测试的 区别与联系。
软件测试面试题: 请试着比较一下黑盒测试、白盒测试、单元测试、集成测试、系统测试、验收测试的 区别与联系。
182 0

热门文章

最新文章