黑盒测试教案
实验黑盒测试用例设计
实验黑盒测试用例设计黑盒测试是一种软件测试方法,用于测试软件的功能是否按照预期要求进行操作并产生正确的输出结果。
黑盒测试着重于测试软件的功能是否按照规格说明书的要求进行运行,而不关心内部的实现细节。
为了设计有效的黑盒测试用例,以下是一些常见的方法和技巧:1.等价类划分:将输入域划分为若干个等价类,然后选择一个或多个测试用例来覆盖每个等价类。
这可以有效地减少测试用例的数量,并确保对不同类型的输入进行全面测试。
2.边界值分析:测试边界值情况是非常重要的,因为边界值通常比一般值更容易引发错误。
根据输入域的边界值,选择测试用例以测试软件在边界条件下的行为。
3.错误推测:通过了解程序的规格说明书和需求,识别可能的错误类型,并选择测试用例来验证软件的处理能力。
比如,如果一个程序要求输入数字,但实际上可以接受其他类型的输入,那么我们就可以选择测试用例来验证这种错误情况。
4.决策表测试:对于复杂的程序逻辑,使用决策表来设计测试用例是一种非常有效的方法。
决策表定义了输入条件和操作条件之间的关系,使得可以根据不同的组合测试不同的情况。
5.正交实验设计:正交实验设计是一种基于统计原理的测试方法,可以有效地减少测试用例的数量,并提高测试的效率。
通过选择一组互相独立的输入条件和值,生成一组测试用例来覆盖不同的情况。
6.错误处理测试:测试软件的错误处理能力是非常重要的。
选择测试用例来模拟可能的错误情况,如输入错误数据、断开网络连接等,以验证软件的错误处理机制。
7.用户需求测试:黑盒测试的目标是验证软件是否满足用户需求。
因此,重点测试的是功能和用户需求之间的对应关系。
选择测试用例来验证软件是否按照用户需求进行操作,并生成正确的输出结果。
总结起来,黑盒测试用例设计的关键是选取合适的测试方法和技巧,并根据软件的需求和规格说明书选择恰当的测试用例来覆盖不同的情况。
通过充分利用这些方法和技巧,可以设计出一组有效的黑盒测试用例,提高软件的质量和可靠性。
黑盒测试方法—场景法
ATM机取款测试用例
一、ATM机没有正常运行
二、卡出现了问题
三、密码出现问题
四、输入金额有误
基本流
确认ATM机正常运行->插入银行卡->输入密码->验证密码->取款->输入取款数额->取钱->显示余额->打印凭条->退卡
基本流
备选流10
场景12-达到每日最大提款金额
基本流
备选流
测试用例信息表
测试用例ID
场景/条件
账号
密码
取款金额
预期 结果
01
场景1-成功取款
有效
有效
有效
取款 成功
02
场景2- ATM机没有正常运行
不适用
不适用Biblioteka 不适用取款 失败03
场景3-插错卡
不适用
不适用
不适用
取款 失败
04
场景4-卡消磁
不适用
不适用
下面是场景法的基本设计步骤
1. 根据说明,描述出程序的基本流及各项备选流
2. 根据基本流和各项备选流生成不同的场景
3. 对每一个场景生成相应的测试用例
4. 对生成的所有测试用例重新复审,去掉多余的测试用例,测试用例确定后,对每一个测试用例确定测试数据值
说了一些场景法的基本概念和设计方法。想必大家已经有了一些了解了。再举一个简单例子来讲解下。这里,我就不用网上很流行的ATM的例子了。我结合以前项目中遇到的情况。设计一个简单的例子来讲解下。
第2讲 黑盒测试 2
软 件 测 试
--3--
决策表
ECJTU
• 个体输入域间有关联性,个体域上考虑所有情况,存 在过划分。 • 在强组合方式下,造成了大量的冗余用例。 • 决策表测试可以:对用例集进行化简合并,更好地改 善输入条件之间的组合。 消除用例间的冗余,缩减测试用例规模,同时保 持等价类的效果。 测试的完备性和无冗余性可以得到较好的体现
--25--
软 件 测 试
决策表
ECJTU
测试实践:三角形问题的决策表 • 需要考虑: 建立决策表:输入区域的合理等价划分,输出细 化 • 不考虑C123, 大家思考输入和输出,自己简单试画下表 3-5分钟时间。
软 件 测 试
--26--
决策表
ECJTU
• 预期输出: 等边三角形、等腰三角形、不等边三角形或非三 角形。 • 输入:对输入域的等价划分,且与输出有关,决定着 输出结果。 构成三角形 a<b+c, b<a+c, c<a+b 特别三角形 a=b, a=c, b=c
软 件 测 试 --33--
保险金案例
ECJTU
• 典型的函数级别的案例。 没有明显的业务流程,只需要从数据择优的角度 来设计案例。 可采用边界值、等价类、决策表等方法设计用例。 • 输入条件有 投保人的年龄、驾照上的当前分数 保险金 = 基本保险费率 x 年龄系数 – 安全驾驶折扣
软 件 测 试
软 件 测 试
--16--
决策表
合并化简 Y1(Y2) M1 D5 的输出为: 日期为 1 y 月份为 1 ? 月份 +1 ? 年份 +1 ? • 思考:输出不确定,什么原因? • 普通大月月末,年末
ECJTU
实验二 黑盒测试
实验二:黑盒测试
一、实验目的
(1)熟练掌握黑盒测试方法中的边值分析方法和判定表驱动测试方法
(2)通过实验掌握如何应用黑盒测试方法设计测试用例
(3)运用所学理论,完成实验研究的基本训练过程
二、实验内容
1.用你熟悉的语言编写一个判断三角形问题的程序。
要求:读入代表三角形边长的三个整数A,B,C,取值范围为1-100,判断它们能否组成三角形。
如果能够,则输出三角形是等边、等腰、一般三角形和非三角形。
2.使用边值分析和判定表驱动测试方法设计测试用例。
三、实验步骤
(1)用你熟悉的语言编写上述源程序
(2)使用边值分析方法设计测试用例,并填写完成表1和表3
(3)使用判定表驱动测试方法建立判定表,完成测试用例的设计。
程序:
四、实验数据记录
1、边界值方法测试用例设计
2、判定表驱动测试设计测试用例
(1)确定规则个数。
(2)列出所有的条件桩和动作桩。
(3)填入输入项。
(4)填入动作项,得到初始判定表
(5)化简,合并相似规则后得到三角形问题的判定表。
化简后的判定表:
五、实验结果分析
六、心得体会。
软件测试-黑盒测试、灰盒测试教案
《软件测试基础》教案第8章动态测试8.2黑盒测试8.3灰盒测试1.回顾上一章: [10分钟] (2)2.课程知识点讲解: (2)2.1.具体知识点1:黑盒测试概念[XX分钟] (2)2.2.具体知识点2:等价类划分[XX分钟] (2)2.3.具体知识点3:边界值分析[XX分钟] (4)2.4.具体知识点3:因果图概念[XX分钟] (4)2.5.具体知识点4:随机测试、猜错法、探索性测试[XX分钟] (5)2.6.具体知识点4:灰盒测试[XX分钟] (5)3.本节总结[10分钟] (5)4.考核点 (5)5.扩展部分 (6)6.作业 (6)授课教师:XXX课时:2课时●主要目的⏹掌握黑盒测试的概念⏹掌握等价类划分、边界值分析、因果图等利用黑盒测试创建测试用例的方法⏹了解随机测试、猜错发、探索性测试的相关概念和技术⏹●重点⏹黑盒测试的概念、灰盒测试的概念、等价类划分、边界值分析、因果图●难点⏹等价类划分、边界值分析、因果图的区别与联系1.回顾上一章: [10分钟]回顾白盒测试的概念、白盒测试创建测试用例的方法。
以提问的方式对上一章的知识进行回顾,以检查学生对上一章知识的学习及掌握情况。
2.课程知识点讲解:2.1.具体知识点1:黑盒测试概念[XX分钟]讲解要点:通过回顾白盒测试的概念,说明白盒测试的缺点,从而引出黑盒测试及黑盒测试的相关理论知识。
2.2.具体知识点2:等价类划分[XX分钟]讲解要点:所有可能的输入数据,即程序的输入域划分成若干部分,然后从每一部分中选取少数有代表性的数据做为测试用例,它完全不考虑程序的内部结构。
等价类划分为有效等价类和无效等价类。
重点讲解等价类划分的步骤及等价类划分的原则,按照等价类划分的步骤及原则创建测试用例。
案例分析:案例1 以新员工信息注册为例,等价类划分的步骤及原则创建测试用例,如下图:有效等价类ID 无效等价类IDName [a-z][A-Z]space 1 {1} 5 Age 1<age<150 2{0} 6{151} 7Gender Female 3abc 8 male 4案例2 有一个程序读入3个整数,把这3个整数作为一个三角形的3条边的长度值。
黑盒测试方案
以我给的标题写文档,最低1503字,要求以Markdown 文本格式输出,不要带图片,标题为:黑盒测试方案# 黑盒测试方案## 1. 引言黑盒测试是一种测试方法,旨在检查软件系统的功能,而不关心其内部的实现细节。
通过黑盒测试,测试人员可以验证系统是否按照预期的要求进行操作和输出。
本文档描述了一个黑盒测试方案,旨在确保软件系统的功能可靠性和稳定性。
## 2. 测试目标黑盒测试的主要目标是验证系统的功能是否符合预期。
具体来说,我们的测试目标包括:- 确保系统的所有功能模块均可以正常工作。
- 验证系统对各种输入的处理是否正确。
- 检查系统的输出是否符合预期。
- 确保系统能够正确地处理异常情况。
- 验证系统的性能指标,如响应时间和吞吐量。
## 3. 测试范围本次黑盒测试的范围涵盖了系统的所有主要功能模块。
具体包括但不限于:- 用户注册与登录功能- 数据查询与展示功能- 数据录入与编辑功能- 数据删除与修改功能- 系统权限管理功能## 4. 测试方法我们将采用以下测试方法来进行黑盒测试:### 4.1 等价类划分法等价类划分法是一种常用的黑盒测试方法,旨在将输入数据划分为等效的类别,并选择代表性的测试用例进行验证。
我们将根据功能的不同,划分出以下等价类:- 正确的输入数据- 错误的输入数据- 边界值数据### 4.2 边界值分析法边界值分析法是一种通过测试边界值和边界值附近的测试用例来提高测试覆盖率的方法。
我们将对每个等价类的边界值进行测试,并选择一些附近的值进行验证。
### 4.3 决策表测试法决策表测试法是一种通过列出所有可能的条件和结果的组合来进行测试的方法。
我们将根据系统的规则和逻辑判断,列出各种条件和结果的组合,并选择代表性的组合进行测试。
## 5. 测试用例根据上述测试方法,我们列出了以下测试用例:### 5.1 用户注册与登录功能1. 输入正确的用户名和密码,验证能否成功注册新用户。
2. 输入已存在的用户名,验证系统是否能够提示用户名已存在。
《软件测试黑盒测试》课件
在此添加您的文本16字
输入正确的用户名和密码,验证是否能够成功登录。
在此添加您的文本16字
测试登录功能的性能,如登录速度、并发用户数等。
案例二:在线银行转账功能测试
总结词:在线银行转账涉及到资金安全,黑盒测试通过 模拟用户转账操作,验证转账功能的正确性和安全性。
验证转账金额的准确性,包括输入金额的确
黑盒测试能够发现软件功能上的缺陷和错误,确 保软件按照需求规格正确运行。
提高软件质量
通过黑盒测试,可以评估软件的可靠性和稳定性 ,从而提高软件的整体质量。
降低维护成本
尽早发现软件缺陷可以减少后期维护和修复的成 本。
黑盒测试的适用范围
01
功能测试
验证软件是否满足需求规格中的功 能要求。
在此添加您的文本16字
详细描述
在此添加您的文本16字
测试支付过程中的异常处理能力,如支付卡信息错误、网 络中断等情况下的表现。
在此添加您的文本16字
验证支付记录的完整性和可追溯性,确保每一笔支付都有 明确的记录和状态更新。
在此添加您的文本16字
验证支付金额的准确性,包括输入金额的合法性、支付金 额的计算等。
黑盒测试的优缺点
• 覆盖面广,可以覆盖大部分功能点。
黑盒测试的优缺点
01
缺点
02
对于内部逻辑和复杂功能可能无法覆盖全 面,导致一些潜在问题被忽略。
03
对测试人员的要求较高,需要具备一定的 业务知识和分析能力。
04
测试用例的编写和维护工作量大,成本较 高。
黑盒测试的发展趋势
自动化测试的普及 随着自动化测试技术的不断发展 ,黑盒测试的自动化程度将越来 越高,从而提高测试效率和准确 性。
黑盒测试(等价类划分)
缺陷描述 预期结果 重现步骤
1、 在VC++6.0中运行源程序 输入数据如图所示:
以下部分由BUG修改人填写 缺陷修改描述 将以下代码 if(a+b>c||a+c>b||b+c>a)cout<<"a,b,c的值不能构成三角形!"; 改成 if(a+b<c||a+c<b||b+c<a)cout<<"a,b,c的值不能构成三角形!"; 测试人 修正人 确认人 修正
23 24 25 26
0 3 0 0
0 0 4 0
5 0 0 0
9 10
3.5 4.5 5 3 4.5 5.5
15 16
无效 输入
27 28
-3 4 3 -4
5 5
33 34
11 12
3.5 4 5.5 3.5 4.5 5.5
17 18
无效 输入 无效 输入 无效 输入 无效 输入 无效 输入 无效 输入
16 17 18 19
3 4 4 3 3 4
5 5 5 6
22 23 24 25
无效 输入 无效 输入 无效 输入 无效 输入 无效 输入 无效 输入 无效 输入
34 35 36 37
3 3 3 3
1 2 1 2
5 5 1 1
40 41 42 43
20 21 22
0 4 3 0 3 4
5 5 0
26 27 28
1
输 入 条 件
输入 三个 整数
19 20 21 22 23
只给a,c 给出三个以上 a为0 一边为零 b为0 c为0 a,b为0 两边为零 b,c为0 a,c为0 三边a,b,c均为0 a<0 一边<0 b<0 c<0 a<0且b<0 二边<0 a<0且c<0 b<0且c<0 三边均<0:a<0且b<0且c<0 a+b<c a+b=c b+c<a b+c=a a+c<b a+c=b
黑盒测试(教学材料)
黑盒测试设计--有图一、等价类法(三角形)1,划分等价类(略)2,写等价类表3,写测试用例二、因果图法(一)程序的规格说明要求:输入的第一个字符必须是#或*,第二个字符必须是一个数字,此情况下进行文件的修改;如果第一个字符不是#或*,则给出信息N,如果第二个字符不是数字,则给出信息M。
一:写出所有的输入输出条件原因结果c1:第一个字符是# e1:给出信息Nc2:第一个字符是* e2:修改文件c3:第二个字符是一个数字e3:给出信息M二:画出因果图三,将因果图转换为判定表:四,写用例因果图法(二)有一个处理单价为5角钱的饮料的自动售货机软件测试用例的设计。
其规格说明如下:若投入5角钱或1元钱的硬币,押下〖橙汁〗或〖啤酒〗的按钮,则相应的饮料就送出来。
若售货机没有零钱找,则一个显示〖零钱找完〗的红灯亮,这时在投入1元硬币并押下按钮后,饮料不送出来而且1元硬币也退出来;若有零钱找,则显示〖零钱找完〗的红灯灭,在送出饮料的同时退还5角硬币。
一,写出所有的输入输出条件原因:1.售货机有零钱找2.投入1元硬币3.投入5角硬币4.押下橙汁按钮5.押下啤酒按钮结果:21. 售货机〖零钱找完〗灯亮22. 退还1元硬币23. 退还5角硬币24. 送出橙汁饮料25. 送出啤酒饮料二,画出因果图三、将因果图转换为判定表四、写用例(略)基本路径测试方法void Sort ( int iRecordNum, int iType )1 {2 int x=0;3 int y=0;4 while ( iRecordNum-- > 0 )5 {6 If ( iType==0 )7 x=y+2;8 else9 If ( iType==1 )10 x=y+10;11 else12 x=y+20;13 }14 }。
黑盒测试方法教材
3.2 边界值测试
基本边界值分析:一个输入条件
xi-1 xi xi+1
xmin xmin+1
…
xmax xmax-1
x
基本思想是测试时输入变量取
最小值(min) 略高于最小值(min+) 正常值(nom) 略低于最大值(max-) 最大值(max)
3.2 边界值测试
基本边界值分析:两个输入条件
第3章 黑盒测试方法
3.1 黑盒测试
1
黑盒测试法概述
主 要 内 容
2 3 4 5
边界值测试
等价类测试
基于决策表的测试
错误推测法
3.1 黑盒测试法概述
把程序和系统看成一个黑盒子,完全不考虑程序的内部 结构和处理程序,只是在程序的接口进行测试,以检查程序 功能是否正常,程序是否能适当接收输入数据产生正确的输 出数据。
Mardi 28 septembre, près d’Alberta, notre regard se perd dans la prairie canadienne surplombée par les éoliennes. Cette région est l’une des plus venteuses au pays.
检查程序功能是否按照需求规格说明书的规定正 常使用,测试每个功能是否有遗漏,检测性能等 特性要求是否满足要求。 检测模块接口是否存在问题。 检测程序初始化和终止方面的错误。
3.1 黑盒测试法概述
通过测试(Test-to-pass)就是通过执行测试用例看 看软件基本功能是否实现,以确信软件在普通情况下能 够正确运行。 失败测试(Test-to-fail)则是采取各种手段通过搞垮 软件来找出缺陷,是纯粹为了破坏软件而设计和执行测 试用例。
软件测试全套课件和教案_第5章_黑盒测试
输入
软件
输出 黑盒测试不深入代码细节
Classified as Business
黑盒测试目的
用于发现是否存在以下情况
①是否有不正确或遗漏了的功能 ②在接口上,能否正确地接受输入数据,能否产生正确地输出信息 ③访问外部信息是否有错 ④软件性能是否满足要求 ⑤界面是否存在错误,是否美观 ⑥是否存在初始化或终止错误
期望结果 输入有效
覆盖范围
等价类①② ③
Classified as Business
第三步——为无效等价类设计测试用例
测试数据 001MAY
20015 2001001
20000 20080 200100 200113
不能出现相同的测试用例
期望结果 输入无效 输入无效 输入无效 输入无效 输入无效 输入无效 输入无效
1.找出所有的原因,原因即输入条件或输入条件的等价类。 2.找出所有的结果,结果即输出条件。 3.明确所有输入条件之间的制约关系以及组合关系,判断条件 是否可以组合。 4.明确所有输出条件之间的制约关系以及组合关系,判断结果 是否可以同时输出。 5.找出不同输入条件组合会产生哪些输出结果。 6.将因果图转换成判定表或决策树。 7.判定表或决策表中每一列表示的情况设计测试用例。
报表日期的 类型及长度
6位数字字符①
有非数字字符 ④ 少于6个数字字符 ⑤ 多于6个数字字符 ⑥
年份范围 月份范围
在2001~2005之间② 在1~12之间③
小于2001 ⑦ 大于2005 ⑧
小于1 ⑨ 大于12 ⑩
Classified as Business
第二步——为有效类设计测试用例
测试数据 200105
(1) 对每个输入或外部条件进行等价类划 分,形成等价类表,为每一等价类规定一 个唯一的编号;
学生选课系统-黑盒测试.
实验报告课程名称:软件测试方法和技术学生姓名:刘成立、龙甜学号:14122402475、14122402596院系:计算机班级:1202 组别:1 任课教师:张建东指导老师:张建东目录一、黑盒测试方法相关概念:1.1黑盒测试定义:1.2黑盒测试分类:1.3黑盒测试优缺点:二、学生选课系统,选课、退选功能结构:2.1选课、退选层次图:2.2选课、退选流程图:三、等价类划分法:3.1:等价类划分法过程分析:3.2:等价类划分法测试用例:四、边界值分析法:4.1:边界值分析法过程分析:4.2:边界值分析法测试用例:五、实验总结:六、测试截图:七、源代码:实验二黑盒测试用例设计一、黑盒测试方法相关概念:1.1黑盒测试定义:黑盒测试也称功能测试,它是通过测试来检测每个功能是否都能正常使用。
在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。
黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。
1.2黑盒测试分类:黑盒测试用例设计方法包括等价类划分法、边界值分析法、错误推测法、因果图法、判定表驱动法、正交试验设计法、功能图法等。
1.3黑盒测试优缺点:优点:黑盒测试是以用户的角度,从输入数据与输出数据的对应关系出发进行测试的。
能够直观的检验软件功能是否符合用户的需求;功能是否正确、有无遗漏;发现界面错误,是否美观、输入和输出错误、数据库访问错误、功能操作逻辑不合理、初始化和终止错误等。
[缺点:软件外部特性本身设计有问题或规格说明的规定有误,黑盒测试方法发现不了。
二、学生选课系统,选课、退选功能层次图:2.1、选课、退选层次图:学生选课系统学生入口选课查询选课退选2.2选课、退选流程图:2.2.1学生选课系统选课流程图:注释:条件A 为,判定课程号是否存在? 条件B 为,判定是否在课程号范围内? 条件C 为,判定是否确认选课? 条件D 为,判断该课程是否已经选过了? 条件E 为,判定是否继续选课?条件H 为,判定选课人数是否已满?a=0?输出:该课程不存在e=1? Td=1?T TFFF输出:这门课程选过了TFTB D ATFEHCFh=max?输出:选课成功!b>0&&b<Cno选课 c=1? 输出:这门课人数已满是否重新选课?2.2.2学生选课系统退选流程图:注释:条件A 为,判定课程号是否输入有误? 条件B 为,判定课程号是否存在? 条件C 为,判断是否重新退选? 条件D 为,判定退选是否成功?三、等价类划分法:3.1:等价类划分法过程分析: 3.1.1等价类划分法基本思想:用一组有限的数据去代表近似无限的数据。
软件测试课程实训-黑盒测试
《软件测试》课程 实 训(验)项目单
编制部门: 编制人: 审核人: 编制日期: 项目编号
项目名称 网上订餐系统的黑盒测试
训练对象 软件技术
学时 4
课程名称 软件测试
教 材 要求递交
递交时间
目的
1. 理解黑盒测试的相关基本概念;
2. 掌握等价类、边界值等常用的黑盒测试技术编写测试用例的方法;
3. 掌握综合运用黑盒测试技术的策略;
内容(方法、步骤、要求或考核标准) 一、实训设备与工具
1. PC 机(内存512M 以上)
2. MS Office 软件 二、实训步骤、方法与要求
1. 实训任务:
项目描述
网上订餐管理系统的注册功能如图所示
5 1 2 3
4 7 8
9 10 11
12
13
6
2.实训要求
利用黑盒测试方法设计测试用例。
3.实训步骤
a)对页面进行功能分析;
b)对每一种功能确定设计测试用例的策略;
c)设计测试用例;
三、评分标准
1.设计测试用例的步骤(20%)
2.测试用例策略的选择正确(30%)
3.测试用例的设计正确(50%)。
黑盒测试等价类划分法
实验1、黑盒测试:等价类划分法
一、实验目的
1、掌握等价类的概念。
2、掌握等价类划分法的测试用例设计方法。
二、实验内容
对三角问题使用等价类划分的方法来设计测试用例,并执行测试,然后撰写实验报告。
三角形问题:规定输入三个整数a、b、c分别作为三边的边长构成三角形。
通过程序判定所构成的三角形的类型(等边三角形、等腰三角形、一般三角形、构不成三角形),并在屏幕上输出0<a,b,c<200输入数据时进行有效性检验。
用C或Java或其它语言写出源程序。
三、实验步骤:
①划分等价类,得到等价类表。
等价类表格式如下:
②运用弱健壮等价类测试用例设计法设计测试用例,得到测试用例表。
测
③执行测试,填写软件缺陷报告。
简单软件缺陷报告格式如下:。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
测试用例设计-黑盒测试
——等价类划分方法教学时间:2012-12-8
教学课时:2课时
教学目的:熟悉黑盒测试的概念,熟练运用等价类划分方法。
教学内容:测试用例设计黑盒测试
教学重点:黑盒测试的主要测试方法:等价类划分。
教学过程:
一、引入
同学们好!从理论上讲,黑盒测试只有采用穷举输入测试,把所有可能的输入都作为测试情况考虑,才能查出程序中所有的错误。
实际上测试情况有无穷多个,人们不仅要测试所有合法的输入,而且还要对那些不合法但可能的输入进行测试。
这样看来,完全测试是不可能的,所以我们要进行有针对性的测试,通过制定测试案例指导测试的实施,保证软件测试有组织、按步骤,以及有计划地进行。
黑盒测试行为必须能够加以量化,才能真正保证软件质量,而测试用例就是将测试行为具体量化的方法之一。
具体的黑盒测试用例设计方法包括等价类划分法、边界值分析法、错误推测法、因果图法、判定表驱动法、正交试验设计法、功能图法、场景法等。
而本节课主要给大家介绍的是等价类划分法、边界值分析法。
二、知识点:
测试用例定义、黑盒测试概念、黑盒测试用例技术-等价类划分法。
三、教学内容:
1、什么是软件测试用例
(1)测试用例是为特定的目的而设计的一组测试输入、执行条件和预期的结果。
(2)测试用例是执行的最小实体。
2、什么是黑盒测试?
黑盒测试又称功能测试、数据驱动测试或基于规格说明书的测试,是一种从用户观点出发的测试。
黑盒测试示意图
测试人员把被测程序当作一个黑盒子。
黑盒测试用于回答以下问题:
1)如何测试功能的有效性?
2)何种类型的输入会产生好的测试用例?
3)系统是否对特定的输入值尤其敏感?
4)如何分隔数据类的边界?
5)系统能够承受何种数据率和数据量?
6)特定类型的数据组合会对系统产生何种影响?
3、等价类划分
等价类划分法是一种重要的、常用的黑盒测试方法,它将不能穷举的测试过程进行合理分类,从而保证设计出来的测试用例具有完整性和代表性。
等价类划分法是把所有可能的输入数据,即程序的输入域划分为若干部分(子集),然后从每一个子集中选取少数具有代表性的数据作为测试用例。
采用等价类划分法设计测试用例通常分两步进行:
(1)确定等价类,列出等价类表。
(2)确定测试用例。
划分等价类可分为两种情况:
(1)有效等价类:是指对软件规格说明而言,是有意义的、合理的输入数据所组成的集合。
利用有效等价类,能够检验程序是否实现了规格说明中预先规定的功能和性能。
(2)无效等价类:是指对软件规格说明而言,是无意义的、不合理的输入数据所构成的集合。
利用无效等价类,可以鉴别程序异常处理的情况,检查被测对象的功能和性能的实现是否有不符合规格说明要求的地方。
举例:输入值是学生成绩,范围是0~100
设计测试用例
然后从划分出的等价类中按以下三个原则设计测试用例:
①为每一个等价类规定一个唯一的编号。
②设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖地有效等价类,重复这一步,直到所有的有效等价类都被覆盖为止。
③设计一个新的测试用例,使其仅覆盖一个尚未被覆盖的无效等价类,重复这一步,直到所有的无效等价类都被覆盖为止。
4、常见等价类划分测试形式
针对缺陷相关性假设,可将等价类测试分为弱等价类测试和强等价类测试。
针对是否对无效数据进行测试,可以将等价类测试分为:标准等价类测试和健壮等价类测试。
标准等价类测试——不考虑无效数据值,测试用例使用每个等价类中的一个值。
健壮等价类测试——主要的出发点是考虑了无效等价类。
对有效输入,测试用例从每个有效等价类中取一个值;对无效输入,一个测试用例有一个无效值,其他值均取有效值。
举例:给定一个两变量x1和x2的函数f,如果f实现为一程序,则输入变量x1和x2将拥有以下边界及边界内的区间:
a≤x1≤d,区间为[a,b],[b,c],[c,d]
e≤x2≤g,区间为[e,f],[f,g]
给出其强、弱、健壮等价类测试。
弱一般等价类测试:
强一般等价类测试:弱健壮等价类测试:强健壮等价类测试:
四、课堂小结:
这节课主要给同学们介绍在软件测试行业中的一种测试技术:黑盒测试,同时也介绍了什么是测试用例,以及黑盒测试技术中的等价类划分方法,并举了例子辅助同学们学习本节课内容。
大家回去复习下次课的内容,黑盒测试技术中的边界值分析法。
作业:
给出下面的有效和无效等价类
输入条件:“…统计全国各省、市、自治区的人口…”
输入条件:“标识符应以字母开头…”
输入条件:长度为1-20的字符串
输入条件:数据库中的值域, CHAR(20), NOT NULL。