单击此处编辑母版标题样式,,单击此处编辑母版文本样式,,第二级,,第三级,,第四级,,第五级,,,,*,单击此处编辑母版标题样式,,单击此处编辑母版文本样式,,第二级,,第三级,,第四级,,第五级,,,,*,单击此处编辑母版标题样式,,单击此处编辑母版文本样式,,第二级,,第三级,,第四级,,第五级,,软件,,测试,,技术,,Testing,AND Developing,,软件测试过程与测试模型,,广东岭南职业技术学院,,上节回顾,,等价类划分法步骤,,边界值分析基本知识点,,,任务一 等价类,,需求:,,城市的号码由两部分组成这两部分的名称和内容分别是:,,1,)地区码:以,0,开头的三位或者四位数字(包括,0,);,,2,)号码:以非,0,、非,1,开头的七位或者八位数字假定被调试的程序能接受一切符合上述规定的号码,拒绝所有不符合规定的号码,请使用等价分类法来设计它的测试用例输入条件,有效等价类,编号,无效等价类,编号,,地区码,0,开头,(1),非,0,开头,(,7,),,三位数字串,(2),<,三位数字串,(,8,),,四位数字串,(3),>,四位数字串,(,9,),,号码,非,0 and,非,1,开头,(4),以,0,开头,(,10,),,,,以,1,开头,(,11,),,七位数字串,(5),<,七位数字串,(,12,),,八位数字串,(6),>,八位数字串,(,13,),,序号,输入参数,覆盖等价类,输出参数,1,012-8725656,(,1,)(,2,)(,4,)(,5,),输入正确,2,,(,1,)(,3,)(,4,)(,5,),输入正确,3,,(,1,)(,2,)(,4,)(,6,),输入正确,4,110-6845316,(,7,),输入错误,5,01-5645642,(,8,),输入错误,6,0,(,9,),输入错误,7,012-0464534,(,1,)(,2,)(,10,),输入错误,8,012-1455544,(,1,)(,2,)(,11,),输入错误,9,012-15454,(,1,)(,2,)(,12,),输入错误,10,42,(,1,)(,3,)(,13,),输入错误,输入条件,有效等价类,编号,无效等价类,编号,,地区码,0,开头,(1),非,0,开头,(,7,),,三位数字串,(2),<,三位数字串,(,8,),,四位数字串,(3),>,四位数字串,(,9,),,号码,非,0 and,非,1,开头,(4),以,0,开头,(,10,),,,,以,1,开头,(,11,),,七位数字串,(5),<,七位数字串,(,12,),,八位数字串,(6),>,八位数字串,(,13,),任务二 日期计算,,给出某一天(年,月, 日),计算出它的下一天,取值范围为:,,年:,1000<= year <=3000,月:,1<=month <=12,日:,1<= day <=31,,如,1999,年,3,月,4,日的下一天是:,1999,年,3,月,5,日,,要求:,,输入:三个参数(年,月, 日),,输出:如能正确计算,计算出它的下一天,,,否则,输出相应的错误信息。
1,)使用,C,语言编写程序实现,,2,)请结合等价类划分法和边界值分析法设计出相应的测试用例,并依照测试用例对所编写的程序进行测试输入条件,有效等价类,编号,无效等价类,编号,年,1000<=year<=3000,(,1,),<1000,(,4,),,,,>3000,(,5,),月,1<=month<=12,(,2,),<1,(,6,),,,,>12,(,7,),日,1<=day<=31,(,3,),<1,(,8,),,,,>31,(,9,),序号,输入参数,覆盖等价类,输出结果,1,,(,1,)(,2,)(,3,),2002,年,1,月,6,日,2,,(,4,),输入错误!请从新输入!,3,,(,5,),输入错误!请从新输入!,4,,(,1,)(,6,),输入错误!请从新输入!,5,,(,1,)(,7,),输入错误!请从新输入!,6,,(,1,)(,2,)(,8,),输入错误!请从新输入!,7,,(,1,)(,2,)(,9,),输入错误!请从新输入!,序号,输入参数,输出结果,1,,2000,年,3,月,1,日,2,,输入错误!请从新输入!,3,,输入错误!请从新输入!,4,,输入错误!请从新输入!,5,,输入错误!请从新输入!,6,,输入错误!请从新输入!,7,,输入错误!请从新输入!,,,3.6,因果图法,3.6.1,因果图法的简介,,3.6.2,因果图,,3.6.3,因果图法测试举例,3.6.1,因果图法的简介,因果图法产生的背景:,,等价类划分法和边界值分析方法都是着重考虑输入条件,但没有考虑输入条件的各种组合、输入条件之间的相互制约关系。
这样虽然各种输入条件可能出错的情况已经测试到了,但多个输入条件组合起来可能出错的情况却被忽视了如果在测试时必须考虑输入条件的各种组合,则可能的组合数目将是天文数字,因此必须考虑采用一种适合于描述多种条件的组合、相应产生多个动作的形式来进行测试用例的设计,这就需要利用因果图(逻辑模型)因果图法的简介,(续),因果图法是基于这样的一种思想:一些程序的功能可以用判定表(或称决策表)的形式来表示,并根据输入条件的组合情况规定相应的操作因果图法的定义:是一种利用图解法分析输入的各种组合情况,从而设计测试用例的方法,它适合于检查程序输入条件的各种组合情况采用因果图法设计测试用例的步骤:,,(,1,)根据程序规格说明书描述,分析并确定因(输入条件)和果(输出结果或程序状态的改变),画出因果图2,)将得到的因果图转换为判定表3,)为判定表中每一列所表示的情况设计一个测试用例因果图法的简介,(续),使用因果图法的优点:,,(,1,)考虑到了输入情况的各种组合以及各个输入情况之间的相互制约关系2,)能够帮助测试人员按照一定的步骤,高效率的开发测试用例3,)因果图法是将自然语言规格说明转化成形式语言规格说明的一种严格的方法,可以指出规格说明存在的不完整性和二义性。
因果图,(续),因果图中的4种基本关系,,在因果图的基本符号中,图中的左结点,c,i,表示输入状态(或称原因),右结点,e,i,表示输出状态(或称结果)c,i,与,e,i,取值0或1,0表示某状态不出现,1则表示某状态出现恒等:若,c,1,是1,则,e,1,也为,1,,否则,e,1,为,0非:若,c,1,是1,则,e,1,为,0,,否则,e,1,为,1或:若,c,1,或,c,2,或,c,3,是1,则,e,1,为,1,,否则,e,1,为,0与:若,c,1,和,c,2,都是1,则,e,1,为,1,,否则,e,1,为,03.6.2,因果图,因果图中用来表示,4,种因果关系的基本符号:,c,1,e,1,恒等,c,1,e,1,非,~,c,1,e,1,或,c,2,c,3,∨,,c,1,e,1,与,c,2,∧,,因果图,(续),因果图中的约束,,在实际问题中输入状态相互之间、输出状态相互之间可能存在某些依赖关系,称为“约束”对于输入条件的约束有,E,、,I,、,O,、,R,四种约束,对于输出条件的约束只有,M,约束E,约束(异):,a,和,b,中,最多有一个可能为1,,即,a,和,b,不能同时为1(但可能多个同时为,0,)。
I,约束(或):,a、b、c,中,至少有一个必须为1,,即,a、b、c,不能同时为0(但可能多个同时为,1,)O,约束(唯一):,a,和,b,必须,有一个且仅有一个,为1R,约束(要求):,a,是1时,,b,必须是1,即,a,为1时,,b,不能为0M,约束(强制):若结果,a,为1,则结果,b,强制为0因果图,(续),因果图中用来表示约束关系的约束符号:,a,b,异,E,a,b,或,I,c,a,b,唯一,O,R,a,b,要求,,M,a,b,强制,,因果图,(续),因果图法最终生成的是决策表利用因果图生成测试用例的基本步骤如下:,,(,1,)分析软件规格说明中哪些是原因(即输入条件或输入条件的等价类),哪些是结果(即输出条件),并给每个原因和结果赋予一个标识符2,)分析软件规格说明中的语义,找出原因与结果之间、原因与原因之间对应的关系, 根据这些关系画出因果图3,)由于语法或环境的限制,有些原因与原因之间、原因与结果之间的组合情况不可能出现为表明这些特殊情况,在因果图上用一些记号表明约束或限制条件4,)把因果图转换为决策表5,)根据决策表中的每一列设计测试用例3.6.3,因果图法测试举例,实例,,用因果图法测试以下程序。
程序的规格说明要求:输入的第一个字符必须是,#,或*,第二个字符必须是一个数字,此情况下进行文件的修改;如果第一个字符不是,#,或*,则给出信息,N,,如果第二个字符不是数字,则给出信息,M,解题步骤:,,(,1,)分析程序的规格说明,列出原因和结果2,)找出原因与结果之间的因果关系、原因与原因之间的约束关系,画出因果图3,)将因果图转换成决策表4,)根据(,3,)中的决策表,设计测试用例的输入数据和预期输出因果图法测试举例,(续),原因,结果,c1,:第一个字符是,#,e1,:给出信息,N,c2,:第一个字符是,*,e2,:修改文件,c3,:第二个字符是一个数字,e3,:给出信息,M,(,1,)分析程序规格说明中的原因和结果:,,,,,,,,,(,2,)画出因果图(编号为,10,的中间结点是导出结果的进一步原因):,c,1,c,2,c,3,e,1,10,e,2,e,3,~,∨,E,~,∧,因果图法测试举例,(续),(,3,)将因果图转换成如下所示的决策表:,,,,1,2,3,4,5,6,7,8,条件:,,C1,,C2,,C3,,10,,1,,1,,1,,1,,1,,0,,1,,0,,1,,1,,1,,0,,0,,1,,0,,1,,1,,1,,0,,1,,0,,1,,0,,0,,1,,0,,0,,0,,0,,0,动作:,,e1,,e2,,e3,,不可能,,,,,√,,,,,√,,,√,,,,√,,,√,,,,√,,√,,√,,,√,测试用例,,,#3,#A,*,6,*,B,A1,GT,规则,选项,因果图法测试举例,(续),测试用例编号,输入数据,预期输出,1,#3,修改文件,2,#A,给出信息,M,3,*,6,修改文件,4,*,B,给出信息,M,5,A1,给出信息,N,6,GT,给出信息,N,和信息,M,(,4,)根据决策表中的每一列设计测试用例:,经典案例分析,有一个处理单价为,1,元,5,角的盒装饮料的自动售货机软件。
若投入,1,元,5,角硬币,按下“可乐”,“雪碧”或“红茶”按钮,相应的饮料就送出来若投入的是两元硬币,在送出饮料的同时退还,5,角硬币1,)分析原因及结果,原因,c1:,投入,1,元,5,角硬币;,,c2:,投入,2,元硬币;,,c3:,按,“,可乐,”,按钮;,,c4:,按,“,雪碧,”,按钮;,,c5:,按,“,红茶,”,按钮,;,中间状态,11,:已投币,,12,:已按钮,结果,a1:,退还,5,角硬币;,,a2:,送出,“,可乐,”,饮料;,,a3:,送出,“,雪碧,”,饮料;,,a4:,送出,“,红茶,”,饮料,;,(,2,)画出因果图,(,3,)决策表,,1,2,3,4,5,6,7,8,9,10,11,c1:,投入,1,元,5,角硬币,,c2:,投入,2,元硬币,,c3:,按“可乐”按钮,,c4:,按“雪碧”按钮,,c5:,按“红茶”按钮,1,,0,,1,,0,,0,1,,0,,0,,1,,0,1,,0,,0,,0,,1,1,,0,,0,,0,,0,0,,1,,1,,0,,0,0,,1,,0,,1,,0,0,,1,,0,,0,,1,0,,1,,0,,0,,0,0,,0,,1,,0,,0,0,,0,,0,,1,,0,0,,0,,0,,0,,1,11,:已投币,,12,:已按钮,1,,1,1,,1,1,,1,1,,0,1,,1,1,,1,1,,1,1,,0,0,,1,0,,1,0,,1,a1:,退还,5,角硬币,,a2:,送出“可乐”饮料,,a3:,送出“雪碧”饮料,,a4:,送出“红茶”饮料,,√,,,√,,,,√,,√,,√,√,,,√,√,,,,√,,,,,(,4,)设计测试用例,用例编号,测试用例,预期输出,1,投入,1,元,5,角,按,“,可乐,”,送出,“,可乐,”,饮料,2,投入,1,元,5,角,按,“,雪碧,”,送出,“,雪碧,”,饮料,3,投入,1,元,5,角,按,“,红茶,”,送出,“,红茶,”,饮料,4,投入,2,元,按,“,可乐,”,找,5,角,送出,“,可乐,”,5,投入,2,元,按,“,雪碧,”,找,5,角,送出,“,雪碧,”,6,投入,2,元,按,“,红茶,”,找,5,角,送出,“,红茶,”,习题,1,、某软件的一个模块的需求规格说明书中描述:,,(,1,)年薪制员工:严重过失,扣年终风险金的,4%,;过失,扣年终风险金的,2%,。
2,)非年薪制员工:严重过失,扣当月薪资的,8%,;过失,扣当月薪资的,4%,请绘制出因果图和判定表,并给出相应的测试用例3.7,决策表法,3.7.1,决策表,,3.7.2,决策表应用,,3.7.3,决策表测试应用案例,3.7.1,决策表,在所有的黑盒测试方法中,基于决策表(也称判定表)的测试是最为严格、最具有逻辑性的测试方法决策表的概念:决策表是分析和表达多逻辑条件下执行不同操作的情况的工具决策表的优点:能够将复杂的问题按照各种可能的情况全部列举出来,简明并避免遗漏因此,利用决策表能够设计出完整的测试用例集合在一些数据处理问题当中,某些操作的实施依赖于多个逻辑条件的组合,即:针对不同逻辑条件的组合值,分别执行不同的操作决策表很适合于处理这类问题决策表实例,规则,选项,,,,1,2,3,4,5,6,7,8,问题,觉得疲倦?,Y,Y,Y,Y,N,N,N,N,,感兴趣吗?,Y,Y,N,N,Y,Y,N,N,,糊涂吗?,Y,N,Y,N,Y,N,Y,N,建议,重读,,,,,√,,,,,继续,,,,,,√,,,,跳下一章,,,,,,,√,√,,休息,√,√,√,√,,,,,“阅读指南,”,决策表,,决策表的组成,决策表通常由以下,4,部分组成:,,条件桩—列出问题的所有条件,,条件项—针对条件桩给出的条件列出所有可能的取值,,动作桩—列出问题规定的可能采取的操作,,动作项—指出在条件项的各组取值情况下应采取的动作,,,条件桩,动作桩,条件项,动作项,,规则,,将任何一个条件组合的特定取值及相应要执行的动作称为一条规则。
在决策表中贯穿条件项和动作项的一列就是一条规则决策表的生成,构造决策表的,5,个步骤:,,(,1,),,确定规则的个数有,n,个条件的决策表有2,n,个规则(每个条件取真、假值)2,),,列出所有的条件桩和动作桩3,),,填入条件项4,),,填入动作项,得到初始决策表5,),,简化决策表,合并相似规则若表中有两条以上规则具有相同的动作,并且在条件项之间存在极为相似的关系,便可以合并合并后的条件项用符号“-”表示,说明执行的动作与该条件的取值无关,称为无关条件三角形问题的决策表,三角形问题的决策表,规则,选项,,,规则,,1-8,规则,,9,规则,,10,规则,,11,规则,,12,规则,,13,规则,14,规则,15,规则,16,条件:,,c1: a,b,c,构成,,三角形?,,c2: a=b?,,c3: a=c?,,c4: b=c?,,,N,,,-,,-,,-,,,,Y,,,Y,,Y,,Y,,,,Y,,,Y,,Y,,N,,,,Y,,,Y,,N,,Y,,,,Y,,,Y,,N,,N,,,,Y,,,N,,Y,,Y,,,Y,,,N,,Y,,N,,,Y,,,N,,N,,Y,,,Y,,,N,,N,,N,动作:,,a1:,非三角形,,a2:,一般三角形,,a3:,等腰三角形,,a4:,等边三角形,,a5:,不可能,,,√,,,,,,√,,,,,,,√,,,,,,,√,,,,√,,,,,,√,,,,√,,,,√,,,√,,3.7.2,决策表应用,NextDate,函数的决策表测试用例设计,,问题分析:,NextDate,函数的三个变量之间在输入定义域中存在一定的逻辑依赖关系,由于等价类划分和边界值分析测试都假设了变量是独立的,如果采用上述两种方法设计测试用例,那么这些依赖关系在机械的选取输入值时可能会丢失。
而采用决策表法则可以通过使用“不可能动作”的概念表示条件的不可能组合,来强调这种依赖关系说明:当决策表规模(指规则的数目,,n,个条件的决策表有2,n,个规则)较大时,可以通过扩展条目决策表(条件使用等价类)、代数简化表、将大表“分解”为小表等方法实例分析,NextDate,函数,为了获得下一个日期,,NextDate,函数执行如下操作:,,如果输入日期不是当月最后一天,则把,day,变量的值加,1,;,,如果输入日期是,1~11,月份中某月的最后一天,则把,day,变量的值复位为,1,,,month,变量的值加,1,;,,如果输入日期是,12,月的最后一天,则,day,变量和,month,变量的值都复位为,1,,,year,变量的值加,1,关于最后一天的判断:,,如果是有,31,天的月份,(1,3,5,7,8,10,12),,,day,变量值为,31,;,,如果是有,30,天的月份,(4,6,9,11),,,day,变量值为,30,;,,如果是有,29,天的月份,(,闰年的,2,月,),,,day,变量值为,29,;,,如果是有,28,天的月份,(,非闰年的,2,月,),,,day,变量值为,28,。
NextDate,函数的动作桩和条件桩,根据所执行的操作,可列出,NextDate,函数的动作桩:,,a1:,不可能;,a2: day,加,1,;,a3: day,复位;,a4: month,加,1,;,a5: month,复位;,a6: year,加,1,,考虑到决策表的规模,条件使用,month,、,day,、,year,变量的等价类,在以下等价类集合上建立决策表:,,对于,month,变量的取值,,M1: {mouth: mouth,有,30,天,},;,M2: {mouth:mouth,有,31,天,,12,月除外,},;,,,M3: {mouth:mouth,有,12,月,},;,M4: {mouth:mouth,是,2,月,},;,,对于,day,变量的取值,,D1:{day:1≤day≤27},;,D2: {day:day=28},;,,D3: {day:day=29},;,D4: {day:day=30},;,D5: {day:day=31},;,,对于,year,变量的取值,,Y1:{year:year,是闰年,},;,Y2: {year:year,不是闰年,},,决策表应用,(续),决策表测试法适用于具有以下特征的应用程序:,,if-then-else,逻辑突出;输入变量之间存在逻辑关系;涉及输入变量子集的计算;输入与输出之间存在因果关系。
适用于使用决策表设计测试用例的条件:,,规格说明以决策表形式给出,或较容易转换为决策表条件的排列顺序不会也不应影响执行的操作规则的排列顺序不会也不应影响执行的操作当某一规则的条件已经满足,并确定要执行的操作后,不必检验别的规则如果某一规则的条件要执行多个操作,这些操作的执行顺序无关紧要3.7.3,决策表测试应用案例,用决策表测试法测试以下程序:,,该程序有三个输入变量,month,、,day,、,year,(,month,、,day,和,year,均为整数值,并且满足:,1≤month≤12,和,1≤day≤31,),分别作为输入日期的月份、日、年份,通过程序可以输出该输入日期在日历上隔一天的日期例如,输入为,2004,年,11,月,29,日,则该程序的输出为,2000,年,12,月,1,日1,)分析各种输入情况,列出为输入变量,month,、,day,、,year,划分的有效等价类2,)分析程序规格说明,结合以上等价类划分的情况给出问题规定的可能采取的操作(即列出所有的动作桩)3,)根据(,1,)和(,2,),画出简化后的决策表案例分析,month,变量的有效等价类:,,M1:,,{month=4,6,9,11} M2: {month=1,3,5,7,8,10},,M3: {month=12} M4: {month=2},,day,变量的有效等价类:,,D1:,,{1≤day≤26} D2: {day=27} D3: {day=28} D4: {day=29} D5: {day=30} D6: {day=31},,year,变量的有效等价类:,,Y1:,,{year,是闰年,} Y2: {year,不是闰年,},,考虑各种有效的输入情况,程序中可能采取的操作有以下六种:,,a1: day+2 a2: day=2 a3: day=1,,a4: month+1 a5: month=1 a6: year+1,习题,1,、根据教材,P85,中给出的简化后的决策表,设计相应的测试用例。
2,、某软件的一个模块的需求规格说明书中描述:,,“,……,对于功率大于,50,马力的机器或者维修记录不全的或已经运行,10,年以上的机器应予以优先的维修处理,……”,这里假定“维修记录不全”和“优先维修处理”有严格的定义请建立该需求的决策表,并绘制出化简(合并规则)后的决策表3.8,错误推测法,错误推测法的概念:基于经验和直觉推测程序中所有可能存在的各种错误,从而有针对性的设计测试用例的方法错误推测方法的基本思想:列举出程序中所有可能有的错误和容易发生错误的特殊情况,根据它们选择测试用例例如:,,在单元测试时曾列出的许多在模块中常见的错误、以前产品测试中曾经发现的错误等,这些就是经验的总结还有,输入数据和输出数据为,0,的情况、输入表格为空格或输入表格只有一行等这些都是容易发生错误的情况,可选择这些情况下的例子作为测试用例3.9,测试方法的选择,通常,在确定测试方法时,应遵循以下原则:,,根据程序的重要性和一旦发生故障将造成的损失来确定测试等级和测试重点认真选择测试策略,以便能尽可能少的使用测试用例,发现尽可能多的程序错误因为一次完整的软件测试过后,如果程序中遗留的错误过多并且严重,则表明该次测试是不足的,而测试不足则意味着让用户承担隐藏错误带来的危险,但测试过度又会带来资源的浪费。
因此测试需要找到一个平衡点测试方法的选择,(续),通常在确定测试策略时,有以下5条参考原则:,,(,1,)在任何情况下都必须采用边界值分析法这种方法设计出的测试用例发现程序错误的能力最强2,)必要时采用等价类划分法补充测试用例3,)采用错误推断法再追加测试用例4,)对照程序逻辑,检查已设计出的测试用例的逻辑覆盖 程度如果没有达到要求的覆盖标准,则应当再补充更多的测试用例5,)如果程序的功能说明中含有输入条件的组合情况,则应一开始就选用因果图法习题,1,、某城市号码由三部分组成,分别是:,,地区码,——,空白或三位数字;,,前 缀,——,非‘,0’,或‘,1’,开头的三位数字;,,后 缀,—— 4,位数字假定被测程序能接受一切符合上述规定的号码, 拒绝所有不符合规定的号码要求:,,(,1,)请选择适当的黑盒测试方法,写出选择该方法的原因,并使用该方法的步骤,给出测试用例表2,)如果所生成的测试用例不够全面,请考虑用别的测试 方法生成一些补充的测试用例多于,3,位数字,,少于,3,位数字,,有非数字字符,,空白,,,3,位数字,地区码,编号,无效等价类,编号,有效等价类,输入条件,前缀,200~999,,有非数字字符,,,,,起始位为,’0’,,,,,起始位为,’1’,,,,,少于,3,位数字,,,,,多于,3,位数字,,后缀,4,位数字,,有非数字字符,,,,,少于,4,位数字,,,,,多于,4,位数字,,3,4,1,,2,5,,6,,7,8,,9,,10,,11,,12,13,,14,,15,使用等价类划分法,测试用例,,编号,输入数据,,,预期输出,,地区码,前缀,后缀,,1,空白,123,4567,接受(有效),2,123,805,9876,接受(有效),3,20A,123,4567,拒绝(无效),4,33,234,5678,拒绝(无效),5,1234,234,4567,拒绝(无效),6,123,2B3,1234,拒绝(无效),7,123,013,1234,拒绝(无效),8,123,123,1234,拒绝(无效),9,123,23,1234,拒绝(无效),10,123,2345,1234,拒绝(无效),11,123,234,1B34,拒绝(无效),12,123,234,34,拒绝(无效),13,123,234,23345,拒绝(无效),覆盖等价类,1, 3, 4,2, 3, 4,5,6,7,8,9,10,11,12,13,14,15,习题,2,、有一个处理单价为,5,角钱的饮料的自动售货机,相应规格说明如下:,,若投入,5,角钱或,1,元钱的硬币,按下,〖,橙汁,〗,或,〖,啤酒,〗,的按钮,则相应的饮料就送出来。
每次只投入一个硬币,只押下一种饮料的按钮),,如投入,5,角的硬币,按下按钮后,总有饮料送出若售货机没有零钱找,则一个显示,〖,零钱找完,〗,的红灯会亮,这时再投入,1,元硬币并按下按钮后,饮料不送出来而且,1,元硬币也退出来若有零钱找,则显示,〖,零钱找完,〗,的红灯不会亮,若投入,1,元硬币及按饮料按钮,则送出饮料的同时找回,5,角硬币请选择适当的黑盒测试方法,写出选择该方法的原因,并使用该方法的步骤,设计出相应的测试用例th,e,nd,你今天微笑了吗?,。