软件测试设计技术概述_第1页
软件测试设计技术概述_第2页
软件测试设计技术概述_第3页
软件测试设计技术概述_第4页
软件测试设计技术概述_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、软件测试设计技术概述软件测试基础Software Testing Foundation21. 黑盒测试技术常用的黑盒测试技术有:1.1 等价类划分法1.2 边界值分析法1.3 状态转移测试1.4 因果图和决策表1.5 用例测试1.6 其他黑盒技术3思考以下问题一图书销售系统,其中一加工为“优惠处理”,条件是:顾客的营业额大于1000元,同时必须信誉好,或者虽然信誉不好,但是20年以上的老主顾。要求使用所学的方法设计测试用例,怎么做?4因果图/决策表法因果图决策表51. 因果图法把输入条件视为“因”,把输出条件视为“果”,将黑盒看成是从因到果的网络图,采用逻辑图的形式来表达功能说明书中输入条件的

2、各种组合与输出的关系。根据这种关系可选择高效的测试用例。方法的依据:需求规格说明中的因果关系6因果图方法举例某程序要求:第一列字符必须是或,第二列字符必须是一个数字,在此情况下对文件进行修改。但第一列字符不正确,则给出信息;若第二列字符不是一个数字,则给出信息。分析原因第一列字符是第一列字符是第二列字符是一个数字结果21修改文件22给出信息23给出信息7因果图21222311E原因第一列字符是第一列字符是第二列字符是一个数字结果21修改文件22给出信息23给出信息1 或者 21 或者 2,不可能既是A又是B既不是A又不是B,给出信息L11 与 3不是 3给出信息8将因果图转换为判定表并得出测试

3、用例12345678条件(原因)111100001100110010101010111100动作(结果)00001110100001010测试用例A3A8ABA?B5B4BNB!C2X6SDP$232122119决策表测试在所有的黑盒测试方法中,基于决策表的测试是最严格的、最具有逻辑性的测试方法。决策表一直被用来表示和分析复杂的逻辑关系,描述不同条件集合下采取行动的若干组合情况。10决策表(Decision Table)决策表是一种二维的表格,通常由四部分组成。条件框 条件定义。操作框 操作的定义。条件条目 各条件的取值及组合。操作条目 在各条件取值组合下所执行的操作。特点:可处理较复杂的组合

4、条件,但不易理解,不易输入计算机。 条件框 条件条目 操作框 操作条目11决策表法的步骤列出影响结果的所有条件,每种条件构成条件框的一行列出所有可能采取的动作,每种动作构成操作框的一行将每种条件的各种可能取值填入决策表的条件条目,用“Y”或“N”表示,决策表的列数是各种条件取值的组合在操作条目中对各列条件组合所采取的动作划“X”简化决策表12A simple example如果天冷,加外套;如下雨,带伞;1. 列出所有可能的条件天冷下雨2. 列出所有可能的动作带外套带雨伞3. 列出所有可能条件的取值组合YYNNYNYN4. 列出各条件组合所采取的动作XXXX13判断表(Decision Tab

5、le)例1:一图书销售系统,其中一加工为“优惠处理”,条件是:顾客的营业额大于1000元,同时必须信誉好,或者虽然信誉不好,但是20年以上的老主顾。123456781000元YYYYNNNN信誉好YYNNYYNN20年YNYNYNYN优惠XXX正常XXXXXY-满足条件 N-不满足条件 X-选中判定的结论条件框条件条目操作框操作条目14123456781000元YYYYNNNN信誉好YYNNYYNN20年YNYNYNYN优惠XXX正常XXXXX说明不管20年的条件满足与否,都执行优惠12341000元YYYN信誉好YNN20年YN优惠XX正常XX优化后的决策表15根据决策表设计测试用例1234

6、1000元YYYN信誉好YNN20年YN优惠XX正常XX测试用例1200,好,-1200,不好,25年1200,不好,12年900,不好,1216例2:ATM用银行卡在ATM取款的流程如图所示要求:完成银行卡取款决策表,并设计测试用例17第一步:列出所有可能的条件银行卡有效PIN正确3次错误PIN有钱可用18第二步:列出所有可能的动作银行卡有效PIN正确3次错误PIN有钱可用拒绝卡询问新PIN吞卡询问新金额出币19第三步:列出所有条件组合12345678910111213141516银行卡有效NNNNYYYYNNNYYYNYPIN正确NNNYNYNNYYNYYNYY3次错误PINNNYNNNY

7、NYNYYNYYY有钱可用NYNNNNNYNYYNYYYY拒绝卡询问新PIN吞卡询问新金额出币不可能20第四步:列出条件组合的动作12345678910111213141516银行卡有效NNNNYYYYNNNYYYNYPIN正确NNNYNYNNYYNYYNYY3次错误PINNNYNNNYNYNYYNYYY有钱可用NYNNNNNYNYYNYYYY拒绝卡XXXXXXXX询问新PINXX吞卡XX询问新金额X出币X21第五步:简化12345银行卡有效NYYYYPIN正确-NNYY3次错误PIN-NYNN有钱可用-NY拒绝卡X询问新PINX吞卡X询问新金额X出币X22课后练习:用决策表法为QQ登录界面设

8、计测试用例 申请一个QQ账号(如已有,该步省略);列出所有可能的条件列出所有可能的动作列出所有可能条件的取值组合标出各条件组合所采取的动作完成决策表;根据决策表设计测试用例在实验报告中给出完成的决策表及设计的测试用例。23下课前完成并提交24软件测试经典案例:NextDate函数25关于Date的一些知识闰年/非闰年大月/小月/平月闰年年份能被4整除能够被100整除且同时能够被4整除大月/小月/平月大月:每月31天,有1、3、5、7、8、10、12小月:每月30天,有4、6、9、11平月:平年有28天,闰年有29天,有2月26关于月份的英文月份英文月份英文1January7July2Febru

9、ary8August3March9September4April10October5May11November6June12December27NextDate函数举例:输入期望输出分析2009.4.62009.4.72009.4.302009.5.12009.5.302009.5.312009.5.312009.6.12008.12.312009.1.12008.2.282008.2.292009.2.282009.3.1日期加1月份加1,日期复位日期加1年加1,月复位,日复位日期加1月份加1,日期复位思考:同样是30日,为何处理方式不一样?思考:同样是31日,为何处理方式不一样?思考:同样

10、是28日,为何处理方式不一样?月份加1,日期复位28发现了什么?变量之间在输入定义域中存在逻辑依赖关系。对这种情况,使用决策表方法可以较好地处理。29使用决策表设计测试用例时,可以把条件解释为输入,把动作解释为输出30分析NextDate中的输入日(D)月(M)年(Y)M1 :month:month有30天M2 :month:month有31天,12月除外M3 :month:month是12月M4 :month:month是2月D1:1day 27D2:day =28D3:day =29D4:day =30D5:day =31Y1:year:year是闰年Y2:year:year不是闰年注意:

11、 这里的每个输入条件不是简单的满足或不满足,而是可以取不同的值,当取值不同时,所采取的动作也不同。因此,必须对各种不同取值分别考虑。31通过前面的例子发现为了产生给定日期的下一个日期,NextDate函数的操作有5种:日期加1月份加1日期复位月份复位年份加132第一步 规则 选项C1:month在c2:day在C3:year在33第二步 规则 选项C1:month在c2:day在C3:year在A1:不可能A2:day+1A3:day复位A4:month+1A5:month复位A6:year+134第三步 规则 选项1234567891011C1:month在M1M1M1M1M1M2M2M2M

12、2M2M3c2:day在D1D2D3D4D5D1D2D3D4D5D1C3:year在-A1:不可能A2:day+1A3:day复位A4:month+1A5:month复位A6:year+135第三步(续) 规则 选项1213141516171819202122C1:month在M3M3M3M3M4M4M4M4M4M4M4c2:day在D2D3D4D5D1D2D2D3D3D4D5C3:year在Y1Y2Y1Y2A1:不可能A2:day+1A3:day复位A4:month+1A5:month复位A6:year+136第四步: 规则 选项1234567891011C1:month在M1M1M1M1M

13、1M2M2M2M2M2M3c2:day在D1D2D3D4D5D1D2D3D4D5D1C3:year在-A1:不可能A2:day+1A3:day复位A4:month+1A5:month复位A6:year+137第四步(续) 规则 选项1213141516171819202122C1:month在M3M3M3M3M4M4M4M4M4M4M4c2:day在D2D3D4D5D1D2D2D3D3D4D5C3:year在Y1Y2Y1Y2A1:不可能A2:day+1A3:day复位A4:month+1A5:month复位A6:year+138第五步:简化,简化后 规则 选项1-3456-91011-1415

14、161718192021C1:month在M1M1M1M2M2M3M3M4M4M4M4M4M4c2:day在D1 D2 D3D4D5D1 D2 D3D4D5D1 D2 D3D4D5D1D2D2D3D3D4D5C3:year在-Y1Y2Y1Y2A1:不可能A2:day+1A3:day复位A4:month+1A5:month复位A6:year+139NextDate函数的决策表测试用例测试用例MonthDayYear预期输出Test1-3816200117/8/2001Test483020041/9/2004Test58312001不可能Test6-9116200417/1/2004Test101

15、3120011/2/2001Test11-141216200417/12/2004Tes1/2002Test16216200417/2/2001Tes2/2004Test1822820011/3/2001Test1922920041/3/2004Test202292001不可能Test21-222302004不可能40课上练习利用所讲的NextDate问题的决策表设计的测试用例,对BlackBox.exe中的NextDate程序进行测试程序的执行方法同三角形程序41测试用例文件格式:输入数据期望结果注意:英文月份的写法不能错;英文字符串要在“”中;期望结

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论