第四章 黑盒测试

合集下载

《黑盒测试》课件

《黑盒测试》课件
3 未来发展趋势
随着软件系统的复杂性增加和技术的发展,黑盒测试将不断演进和完善,以满足新需求。
参考文献
• 相关学术论文和书籍
3 黑盒测试的局限性
一些内部缺陷可能无法通 过黑盒测试发现,测试覆 盖面有限,对于复杂系统 可能不够全面。
黑盒测试的方法
等价类划分法
将输入数据划分为等价类,以减少测试用例数量, 并覆盖不同输入情况。
边界值分析法
关注输入数据的边界情况,测试系统在边界处的 行为。
因果图法
通过绘制因果图,分析系统输入和输出之间的关 系,找出可能的故障点。
判定表方法
通过绘制判定表,列出不同输入条件下的所有情 况和相应的输出。
实例:使用等价类划分法进行测试
1
等价类划分法示例
假设有一个用户登录系统,输入用户名和密码进行登录。用户名可以是任意字符, 密码必须是6-12位数字。
2
实例分析
根据等价类划分法,我们可以选择一个有效用户名和一个有效密码,以及一些无 效的用户名和密码组合进行测试。
3
测试结果
通过等价类划分法,我们发现了系统在某些情况下无法正确处理无效用户名和密 码组合的问题。
黑盒测试的注意事项
1 测试数据的选择
选择代表不同情况的测试 数据,包括边界值和特殊 情况。
2 测试用例的设计
设计有效的测试用例,充 分覆盖系统的功能和可能 的错误情况。
3 测试用例的管理
建立有效的测试用例管理 系统,记录和跟踪测试用 例的执行和结果。
黑盒测试的应用
软件开发
黑盒测试在软件开发中广泛应用,帮助发现和修复 潜在问题,提高软件质量。
安全领域
黑盒测试可以通过模拟真实攻击的方式,评估系统 的安全性,发现潜在的漏洞和风险。

黑盒测试技术之状态转换图-教学课件

黑盒测试技术之状态转换图-教学课件
➢ 状态 ➢ 转换 ➢ 输入 ➢ 输出
1.状态转换测试
状态转换测试:也称为状态迁移图测试,是通过描绘系统的“状态” 及引起系统“状态转换”的“事件”来表示系统的行为。状态转换图 还指明了作为特定事件的结果,系统将做哪些“动作”。
状态转化测试普遍较多的使用在嵌入式软件行业和自动化行业。
2.使用状态转换测试设计测试用例
使用状态转换测试设计测试用例的步骤: 1. 根据需求提取全部状态; 2. 绘制状态迁移图; 3. 根据状态迁移图推导测试路径(状态迁移树); 4. 选取测试数据,构造测试用例。
3.实例
需求: 路人甲打电话预订飞机票,要去某地。
1.根据需求提取全部状态
测试需求分析:
➢ 客户向航空公司打电话预订机票。此时,机票信息处于“完成预订”状态; ➢ 顾客支付了机票款项后,机票信息变为“已支付”状态; ➢ 客户当天到达机场并使用身份证换领登机牌后,机票信息变为“已出票”状态; ➢ 检票登机后,机票信息变为“已使用”状态; ➢ 在登机前,可以取消自己的订票信息,若已支付机票费用,则可以退回票款。 ➢ 取消后,订票信息处于“已取消”状态;
转换:指两种状态之间的一种关系,表明对象将在第一个状态中执行 一定的动作,并将在某个事件发生,同时某个特定条件满足时进行第 二个状态。
1.状态转换测试
动作:是指状态转换之后一种结果或者输出。 有限状态机:是一个概念上的构件(比如程序,逻辑电路,汽车传送
装置等)、输入集合和输出集合时有限的、并只有有限数目的状态。 其作用主要是描述对象在它的生命周期内经历的状态序列,以及如何 响应来自外界的各种事件。通常一个有限状态机由以下部分组成:
第四章 测试设计技术
——黑盒测试技术之状态转换测试
主讲人:丁慧

软件测试4-黑盒测试1判定表法

软件测试4-黑盒测试1判定表法

器,并且维修记录不全或已运行10 年以上的机器,应给予优先的维修 处理……”
请建立决策表。
例:维修机器问题(续)

(1)列出所有的条件桩和动作桩
条件桩
C1:功率大于50马力吗? C2:维修记录不全吗? C3:运行超过10年吗?
动作桩
A1:进行优先处理 A2:作其他处理
例:维修机器问题(续)
7 M2 D2 —
8 M2 D3 —
9 M2 D4 —
10 M2 D5 —
X
X
X X X
X
X
X
X X X
续……
此月是12月 此月是2月 此年是闰年
c1:月份在 c2:日期在 c3:年在 行为 a1:不可能 a2:日期增1 a3:日期复位 a4:月份增1 a5:月份复位 a6:年增1
11 M3 D1 —

(2)确定规则个数
输入条件个数:3;
功率大于50马力吗 维修记录不全吗

运行超过10年吗
每个条件的取值:“是”或“否”;
规则个数:2*2*2 =8;
例:维修机器问题(续)

(3)填入条件项;
1 2 3 4 5 6 7 8
功率大于50马力吗?
Y
Y Y
Y
Y N
Y
N Y
Y
N N
N
Y Y
N

4.3.4 案例: NextDate函数

问题描述
程序有三个输入变量month、day、year, 并且满足:1≤month≤12、1≤day≤31、 1900≤ year ≤2050。它们分别作为输入日 期的月份、日、年份,通过程序可以输出 该输入日期在日历上下一天的日期。例如, 输入为2005年11月29日,则该程序的输出 为2005年11月30日。

第4章黑盒测试

第4章黑盒测试

• 在“C0编译器”案例中,从用户得到的输入条件有两个: 源代码文件名和保存目标代码文件名,而程序本身将读取 源代码;输出信息有三种可能:
– 全部输入正确且源代码正确,输出编译结果和运行结果,保存目 标代码; – 全部输入正确且源代码不正确,输出编译结果和错误信息; – 输入存在错误,输出相应错误信息。

将上一节得到的“C0编译器”错误来源与错误信 息不一一对应得到的因果图转换为决策表.
4.5 场景法
• 用例场景是通过描述流经用例的路径来确定的过程,这个 流经过程要从用例开始到结束遍历其中所有的基本流和备 选流。
– 基本流:采用黑直线表示,是经过用例的最简单路径,表示无任 何差错,程序从开始执行到结束; – 备选流:采用不同颜色表示,一个备选流可以从基本流开始,在 某个特定条件下执行,然后重新加入基本流中,也可以起源于另 一个备选流,或终止用例,不再加入到基本流中。
• 在“C0编译器”案例中,有很多和个数有 关的约定,应该用边界值法结合等价类划 分法进行测试。
x2
x2
d
d
c
c
a
b
x1
a
b
x1
4.3 因果图法
• 因果图法是一种黑盒测试方法,它从自然 语言书写的程序规格说明书中寻找因果关 系,即输入条件与输出和程序状态的改变 ,通过因果图产生判定表。它能够帮助人 们按照一定的步骤高效的选择测试用例, 同时还能指出程序规格说明书中存在的问 题。
4.4 决策表法
• 在一些数据处理问题中,某些操作是否实施依赖于多个逻 辑条件的取值。在这些逻辑条件取值的组合所构成的多种 情况下,分别执行不同的操作。处理这类问题的一个非常 有力的工具就是决策表。 • 决策表是分析和表达多逻辑条件下执行不同操作的情况的 工具,可以把复杂逻辑关系和多种条件组合的情况表达的 规则 比较明确。决策表通常由四部分组成,

第4章 黑盒测试 第2节 等价类测试

第4章 黑盒测试  第2节  等价类测试

弱健壮等价类测试用例
Software Testing
4. 强健壮等价类测试
强健壮等价类测试:基于多缺陷假设,
从所有等价类的笛卡尔积的每一个元素 中获得测试用例
强:多缺陷假设 健壮:考虑无效值
强健壮等价类测试用例
思考:
一个变量个数为n的函数的强健壮等价类测试会产生 多少个测试用例?
Software Testing
只给b,c
未输入数
22
23
三 角 形 的 等 价 类
输入条件
有效等价类
编号 3 4 5 6 7 8 9
无效等价类
编号
a + b > c, 且a≠b≠c
构成一般 三角形 a + c > b, 且a≠b≠c
a+b<c
a+b=c a+c<b a+c=b
24
25 26 27
b + c > a, 且a≠b≠c
的输入数据所构成的集合;
无效等价类
对于程序的规格说明来说,是不合理的、没有
意义的输入数据所构成的集合;
等价类的分类
有效等价类 无效等价类
有意义的、 合理的输入 数据所组成 的集合
等价类
无意义的、 不合理的输 入数据所构 成的集合
等价类划分
程序输入条件为小于100大于10的整数x, 求其有效等价类和无效等价类。-取值范围 一个有效等价类:10<x<100; 两个无效等价类:x≤10和x≥100 程序输入条件必须由字符‘a’开头的串。取值集合 一个有效等价类:所有以‘a’开头的串 一个无效等价类:不以‘a’开头的串
表 4-2-5 三角形问题的测试用例

软件测试 第4章动态测试技术-黑盒测试方法

软件测试 第4章动态测试技术-黑盒测试方法

第4章动态测试技术(1)-黑盒测试方法1.黑盒测试概述1.定义:黑盒测试是依据软件的需求规约,设计测试用例,检查程序的功能是否符合需求规约的要求2.测试用例:由测试输入数据和预期结果组成(运行实际结果和预期结果不一致说明存在错误)3.主要的黑盒测试方法有等价类划分边界值分析错误猜测法因果图法判定表测试法基于场景测试法正交试验法比较测试2.等价类划分1.概述:1.1由于不能穷举所有可能的输入数据来进行测试,所以只能选择少量有代表性的输入数据,来揭露尽可能多的程序错误(设计测试用例遵循的原则之一)1.2等价类划分方法将所有可能的输入数据划分成若干个等价类,然后在每个等价类中选取一个代表性的数据作为测试用例的输入数据等价类是指输入域的某个子集,该子集中的每个输入数据对揭露软件中的错误都是等效的,测试等价类的某个代表值就等价于对这一类其他值的测试 也就是说,如果该子集中的某个输入数据能检测出某个错误,那么该子集中的其他输入数据也能检测出同样的错误;反之,如果该子集中的某个输入数据不能检测出错误,那么该子集中的其他输入数据也不能检测出错误例如:判断一个三角形的三条边是否构成等边三角形,那么{1,1,1}、{3,3,3,}、{8,8,8}……都是等效的。

1.3等价类划分方法把输入数据分为有效输入数据和无效输入数据(除测试正常的数据外,还应该测试不正常的数据)1.4有效输入数据指符合规格说明要求的合理的输入数据,主要用来检验程序是否实现了规格说明中的功能1.5无效输入数据指不符合规格说明要求的不合理或非法的输入数据,主要用来检验程序是否做了规格说明以外的事例如:程序判断三角形是否等边三角形,输入a、b、c三条边,如果a=b,b=c,a=c =>等边三角形,{0,0,0}、{-1,-1,-1}属于无效输入数据,不仅要检查正常的数据输入,还应驾车不正常的数据输入1.6在确定输入数据等价类时,常常还要分析输出数据的等价类,以便根据输出数据等价类导出输入数据等价类2.等价类划分设计测试用例的步骤2.1确定等价类根据软件的规格说明,对每一个输入条件(通常是规格说明中的一句话或一个短语)确定若干个有效等价类和若干个无效等价类可使用如下表格3.确定等价类的规则:3.1如果输入条件规定了取值范围,则可以确定一个有效等价类(输入值在此范围内)和两个无效等价类(输入值小于最小值及大于最大值)例如,规定输入的考试成绩在0..100之间,则有效等价类是“0 ≤成绩≤100”,无效等价类是“成绩<0”和“成绩>100”3.2如果输入条件规定了值的个数,则可以确定一个有效等价类(输入值的个数等于规定的个数)和两个无效等价类(输入值的个数小于规定的个数和大于规定的个数) 例如,规定输入构成三角形的3条边,则有效等价类是“输入边数= 3”,无效等价类是“输入边数<3”和“输入边数>3”3.3如果输入条件规定了输入值的集合(即离散值),而且程序对不同的输入值做不同的处理,那么每个允许的值都确定为一个有效等价类,另外还有一个无效等价类(任意一个不允许的值)(例如:交通信号灯“红”、“黄”,“绿”,是输入的集合,输入离散值) 例如,规定输入的考试成绩为优、良、中、及格、不及格,则可确定5个有效等价类和一个无效等价类3.4如果输入条件规定了输入值必须遵循的规则,那么可确定一个有效等价类(符合此规则)和若干个无效等价类(从各个不同的角度违反此规则)例如,在程序语言中对变量标识符规定为“以字母开头的……串”,那么有效等价类是“以字母开头的串”,而无效等价类有“以数字开头的串”、“以标点符号开头的串”…等3.5如果输入条件规定输入数据是整型,那么可以确定三个有效等价类(正整数、零、负整数)和一个无效等价类(非整数)3.6如果输入条件规定处理的对象是表格,那么可以确定一个有效等价类(表有一项或多项)和一个无效等价类(空表)以上只是列举了一些规则,实际情况往往是千变万化的,在遇到具体问题时,可参照上述规则的思想来划分等价类4.设计测试用例4.1在确定了等价类之后,建立等价类表,列出所有划分出的等价类,并为每个有效等价4.24.2.1设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖的有效等价类,重复这一步,直到所有的有效等价类都被覆盖为止(一个测试用例覆盖多个有效等价类)4.2.2为每个无效等价类设计一个新的测试用例(无效等价类发现错误的概率比较大,每个无效等价类设计一个测试用例,提供测试的精度)4.3用等价类划分法设计测试用例的实例:某编译程序的规格说明中关于标识符的规定如下:标识符是由字母开头,后跟字母或数字的任意组合构成;标识符的字符数为1~8个;标识符必须先说明后使用;一个说明语句中至少有一个标识符;保留字不能用作变量标识符(例如:if、goto、int、float)4.3.1用等价类划分方法,建立输入等价类表4.3.2下面选取9个测试用例,它们覆盖了所有的等价类3.边界值分析1.概述:1.1边界值分析常用于对其他黑盒测试方法(特别是等价类划分方法)的补充1.2人们从长期的测试工作经验得知,大量的错误是发生在输入或输出范围的边界上,而不是在输入范围的内部。

第四章黑盒测试

第四章黑盒测试

第1章一、判断分析题1.软件测试的目的是尽可能多的找出软件的缺陷。

()2.软件测试的目的是证明软件没有错误。

()3.测试组负责软件质量。

( )4.程序的效率与程序的复杂性相关。

( )5.软件是一种逻辑实体,而不是具体的物理实体,因而它具有抽象性。

( )6.测试程序仅仅按预期方式运行就行了。

( )7.好的测试员不懈追求完美。

( )8.不存在质量很高但可靠性很差的产品。

( )9.测试组负责软件质量。

( )10.测试是为了验证该软件已正确地实现了用户的要求。

( )11.发现错误多的程序模块,残留在模块中的错误也多。

( )12.程序效率的提高主要应通过选择高效的算法来实现。

( )13.测试人员要坚持原则,缺陷未修复完坚决不予通过。

()14.项目立项前测试人员不需要提交任何工件。

()15.缺陷跟踪系统只针对对测试人员来使用。

( )16.从用户软件开发者的角度出发,普遍希望通过软件测试暴露软件中隐藏的错误和缺陷,以考虑是否可接受该产品。

( )17.软件项目在进入需求分析阶段,测试人员应该开始介入其中。

( )18.测试是提高产品质量根本手段。

()19.项目立项前测试人员不需要提交任何工件。

()20.测试人员要坚持原则,缺陷未修复完坚决不予通过。

()21.代码评审员一般由测试员担任。

()22.代码评审是检查源代码是否达到模块设计的要求。

()二、简答题1.什么是软件测试?软件测试的目的和作用是什么?2.简述软件测试的目的和原则。

3.软件缺陷产生的原因?4.在软件工程或软件测试中,哪些软件问题被称为软件缺陷?5.软件的缺陷等级应如何划分?6.针对缺陷采取怎样的管理措施?7.在测试实施之前,如何才能确定好的测试策略和测试方法?8.什么是软件测试,以及软件测试的意义?9.什么是软件测试?什么是测试用例,测试用例必须包括那几部分?10.简述静态测试和动态测试的区别?11.分析软件测试的复杂性。

12.简述你对测试工作的认识过程、在以后的工作的一些建议。

实践:黑盒测试之边界值案例

实践:黑盒测试之边界值案例
第四章 黑盒测试及其实例设计
黑盒测试法是根据被测程序功能来进行测试,所以通常
也称为功能测试。用黑盒测试法设计测试用例,有4 种常用
技术:
等价分类法
边界值分析 错误猜测法
决策表法
因果图法
2. 边界值分析法(Boundary
Value Analysis)
被测试 子域
测试内点
测试外点
期望结果
显示出错 显示出错 显示出错 显示出错 显示出错 输入有效 输入有效 输入有效 显示出错 显示出错 输入有效 输入有效 显示出错 显示出错
选取理由 仅有1个合法字符 比有效长度少1 比有效长度多1 只有1个非法字符 6个非法字符 类型及长度均有效
最小日期 最大日期 刚好小于最小日期 刚好大于最大日期 最小月份 最大月份 刚好小于最小月份 刚好大于最大月份
ቤተ መጻሕፍቲ ባይዱ
软件边界与悬崖很类似
例:某报表处理系统要求用户输入处理报表 的日期,日期限制在2005年1月至2009年12 月,即系统只能对该段期间内的报表进行 处理,如日期不在此范围内,则显示输入 错误信息。系统日期规定由年、月的6位数 字字符组成,前四位代表年,后两位代表 月。
“报表日期”边界值分析法测试用例
报表日 期的类 型及长 度
日期 范围
在有效范围 边界上选取 数据
月份为1月 月份为12月 月份<1 月份>12
月份 范围
输入 条件 测试用例说明 1个数字字符 5个数字字符 7个数字字符 有1个非数字字符 全部是非数字字符 6个数字字符 测试数据 5 20065 2007005 2008.5 MAY--200605 200501 200912 200500 200913 200501 200512 200500 200513
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第四章黑盒测试
一、判断分析题
1.软件测试员可以对产品说明书进行白盒测试。

( )
2.静态白盒测试可以找出遗漏之处的问题。

( )
3.总是首先设计白盒测试用例。

()
4.用黑盒法测试时,测试用例是根据程序内部逻辑设计的。

()
5.黑盒测试方法中最有效的是因果图法。

( )
6.软件测试按照测试过程分类为黑盒、白盒测试。

()
7.白盒测试又称结构测试、逻辑驱动测试或基于程序的测试。

()
8.白盒测试时一般由开发人员兼任测试人员的角色。

()
9.黑盒测试是从用户观点出发的测试。

()
10.白盒测试是从用户观点出发的测试。

()
11.白盒测试根据程序外部特征进行测试,黑盒测试根据程序内部逻辑结构进行测试。

()
12.程序通过了全面的白盒测试,就不需要再进行黑盒测试了。

()
13.代码评审是检查源代码是否达到模块设计的要求。

()
14.代码评审员一般由测试员担任。

()
15.对于同一个测试对象,等价类的测试用例数多于边界值的测试用例数。

()
16.如果输入条件规定了取值范围,则可定义一个有效等价类和两个无效等价类。

()
17.不能对输出值域进行健壮性测试。

()
18.有n个变量的函数的健壮最坏情况测试用例的个数为:5的n次方。

()
19.有n个变量的函数的健壮最坏情况测试用例的个数为:7的n次方。

()
20.有n个变量的函数的健壮性测试用例的个数为:5n+1。

()
21.有n个变量的函数的最坏情况测试会产生5的n次方个测试用例。

()
22.有n个变量的函数的边界值分析会产生4n+1个测试用例()
23.边界值分析的假设是“多缺陷”假设。

()
24.健壮性测试的主要价值是观察例外情况的处理。

()
25.在设计测试用例时,应包括合理的输入条件和不合理的输入条件。

( )
26.弱健壮等价类测试基于多缺陷假设。

()
27.强健壮等价类测试是基于多缺陷假设,并考虑了无效值。

()
28.强一般等价类测试考虑了无效值。

()
29.弱一般等价类是基于单缺陷假设。

()
30.弱健壮等价类测试基于单缺陷假设并考虑了无效值。

()
31.强健壮等价类测试是基于多缺陷假设,并考虑了无效值。

()
32.等价类测试的弱形式不如对应的强形式的测试全面()
二、简答题
1.什么是黑盒测试?黑盒测试主要采用的技术有哪些?
2.简单描述黑盒测试各种方法的特点。

3.如果能够执行完美的黑盒测试,还需要进行白盒测试吗?为什么?
4.边界值测试有几种方法?
5.对于教材上的佣金问题,如果采用输入值边界值测试,有几个测试用例?如果结合输出
值进行边界值测试,如何考虑测试用例?
6.什么是等价类?如何划分等价类?
7.等价分类法的测试技术采用的一般方法?举例说明?
8.什么是等价类?如何划分等价类?等价类测试中有哪些方法?
9.对于日期问题,佣金问题,如何合理划分等价类?
10.为日期问题和开发决策表测试用例,为三角形问题的直角三角形开发测试用例。

11.请画出维恩图来表示边界值分析、健壮性测试、最坏情况测试生成的测试用例之间的关
系。

12.如果试图进行输出值域健壮性测试,会出现什么情况?
13.为什么要进行等价类的划分?等价类划分应该遵循哪些原则?
三、用例设计题
1.针对以下问题:某一种8位计算机,其十六进制常数的定义是以0x或0X开头的十六
进制整数,其取值范围为-7f~7f(不区分大小写字母),如0x11、0x2A、-0x3c。

请采用等价类划分的方法设计测试用例。

2.有一个小程序,能够求出三个在0到9999间整数中的最大者,请分别用边界值分析和
健壮性测试方法设计测试用例。

3.假定一台ATM机允许提取增量为50元,总金额从100到2000(包含2000元)不等的
现金。

请结合等价类方法和边界值分析进行测试。

4.有一个小学生成绩管理系统,要求把成绩好的同学放到前面的,其中每个人都有三门课
程:语文,数学和英语。

首先是按个人的总成绩进行排名,如果某两个人的总分相同,则按他们的语文成绩进行排名,如果总成绩和语文成绩都相同时,则按照他们的数学成绩进行排名的。

请用等价类方法进行测试。

5.程序有三个输入变量month、day、year(month、day和year均为整数值,并且满足:
1≤month≤12、1≤day≤31、1900≤ year ≤2050。

),分别作为输入日期的月份、日、年份,通过程序可以输出该输入日期在日历上隔一天(第三天)的日期。

例如,输入为2005年11月29日,则该程序的输出为2005年12月1日。

请用等价类测试和边界测试法设计测试用例。

6.某软件的一个模块的需求规格说明书中描述:
(1)年薪制员工:严重过失,扣年终风险金的4%;过失,扣年终风险金的2%。

(2)非年薪制员工:严重过失,扣当月薪资的8%;过失,扣当月薪资的4%。

请绘制出判定表,并设计相应的测试用例。

7.某公司折扣政策:年交易额在10万元以下的,无折扣;在10万元以上的并且近三个月
无欠款的,折扣率10%;在10万元以上,虽然近三个月有欠款,但是与公司交易在10年以上的,折扣率8%;在10万元以上,近三个月有欠款,且交易在10年以下的折扣率5%;请用判定表来描述该公司的折扣政策。

8.请讨论判定表测试能够在多大程度上处理多缺陷假设问题。

9.请使用因果图法为三角形问题设计测试用例。

10.分析中国象棋中走马的实际情况(下面未注明的均指的是对马的说明)
a)如果落点在棋盘外,则不移动棋子;
b)如果落点与起点不构成日字型,则不移动棋子;
c)如果落点处有自己方棋子,则不移动棋子;
d)如果在落点方向的邻近交叉点有棋子(绊马腿),则不移动棋子;
e)如果不属于1-4 条,且落点处无棋子,则移动棋子;
f)如果不属于1-4 条,且落点处为对方棋子(非老将),则移动棋子并除去对方棋子;
g)如果不属于1-4条,且落点处为对方老将,则移动棋子,并提示战胜对方,游戏结
束。

11.假设商店货品价格(R) 都不大于100元(且为整数),若顾客付款(P)在100元内,现有
一个程序能在每位顾客付款后给出找零钱的最佳组合(找给顾客货币张数最少)。

假定此商店的货币面值只包括:50元(N50)、10元(N10)、5元(N5)、1元(N1) 四种。

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

相关文档
最新文档