Ch03-软件测试方法-软件测试方法和技术-朱少课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《Ch03-软件测试方法-软件测试方法和技术-朱少课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Ch03 软件 测试 方法 技术 课件
- 资源描述:
-
1、 软件测试方法和技术软件测试方法和技术第第3章章 软件测试的方法软件测试的方法朱少民 K http:/ 第2章 回顾p软件缺陷是软件质量的对立面p软件缺陷(Bug)是什么p验证和确认p软件测试的分类p静态测试与动态测试p主动测试与被动测试p黑盒测试与白盒测试p测试级别:单元、集成、系统和验收p软件测试计划与用例p专业测试人员的责任和要求第3章 软件测试的方法3.1 基于直觉和经验的方法3.2 基于输入域的方法3.3 基于组合及其优化的技术3.4 基于逻辑覆盖的方法3.5 基于故障模式的测试方法3.6 基于模型的测试方法3.7 形式化方法方法论和具体方法p从方法论看,更多体现了一种哲学的思想从方
2、法论看,更多体现了一种哲学的思想,例如辩证统一的方法,在测试中有许多对立统一体,如静态测试和动态测试、白盒测试和黑盒测试、自动化测试和手工测试等。p软件测试的方法论来源于软件工程的方法论,例如有面向对象的开发方法,就有面向对象的测试方法;有敏捷方法,就有和敏捷方法对应的敏捷测试。测试领域Domains under TestApplied toDNF: Disjunctive Normal Form(析取范式) FSM: Finite Status Machine测试方法 SWEBOK 3.06具体方法或技术7等价类、边界值、两两组合等价类、边界值、两两组合(pairwisepairwise)、
3、随机测试)、随机测试黑盒测试黑盒测试基于控制流的标准、基于数据流的标准、CBT参考模型白盒测试故障模型、错误猜测法、变异测试操作配置(operational profile)、用户观察启发黑盒测试决策表、有限状态机、形式化验证、TTCN3、工作流模型OOS、web、real-time、SOA、embedded、safe-critical应用领域过去常提“黑盒和白盒”方法8黑盒方法白盒方法其它方法 world93.1 基于直觉和经验的方法Ad-hoc测试方法和ALAC测试 错误推测法 3.1.1 ALAC测试和随机测试ALAC,是Act-like-a-customer(象客户那样做)的简写,AL
4、AC测试方法是一种基于客户使用产品的知识开发出来的测试方法,它的出发点是著名的Pareto 80/20规律3.1.2 错误猜测法错误推测法是测试者根据经验、知识和直觉来发现软件错误,来推测程序中可能存在的各种错误,从而有针对性的进行测试。 单元测试中发现的模块错误;单元测试中发现的模块错误; 产品的以前版本曾经发现的错误;产品的以前版本曾经发现的错误; 输入数据为输入数据为0 0或字符为空;或字符为空; 当软件要求输入时当软件要求输入时( (比如在文本框中比如在文本框中),),不是没有输入正确的信不是没有输入正确的信息,而是根本没有输入任何内容,单单按了息,而是根本没有输入任何内容,单单按了E
5、nterEnter键;键; 3.2 基于输入域的测试方法3.2.1 等价类划分方法设计测试用例时,要同时考虑这两种等价类。因为软件不仅要能接收合理的数据,也要能经受异常数据的考验。经过正反的测试才能确保软件具有更高的可靠性。all inputsi1i4i2i3确定等价类的方法in rangegreater than rangeless than rangevaluegreater than valueless than value在输入条件规定了输入值的集合或者规定了“必须如何”的条件的情况下,可以确立一个有效等价类和一个无效等价类。在输入条件是一个布尔量的情况下,可确定一个有效等价类和一个无
6、效等价类确定等价类的方法(2)not member of setmember of setBooleanNon-Boolean确定等价类的方式 (3)有什么具体案例?等价类测试用例-Example等价类1: Integer等价类2: Decimal fraction等价类3: Negative等价类4: Invalid input根据等价类创建测试用例的步骤a) 建立等价类表,列出所有划分出的等价类:b) 为每个等价类规定一个唯一的编号;c) 设计一个新的测试用例,使其尽可能多地覆盖尚未覆盖的有效等价类d) 重复c),最后使得所有有效等价类均被测试用例所覆盖;e) 设计一个新的测试用例,使其只
7、覆盖一个无效等价类。f) 重复e)使所有无效等价类均被覆盖。输入条件有效等价类无效等价类3.2.2 边界值分析方法 确定边界情况(输入或输出等价类的边界) 选取正好等于、刚刚大于或小于边界值作为测试数据确定边界值的方法如果输入条件规定了值的范围,则应取刚达到这个范围的边界的值,以及刚刚超越这个范围边界的值作为测试输入数据。如果输入条件规定了值的个数,则用最大个数、最小个数、比最小个数少一、比最大个数多一的数作为测试数据。a ab ba ab b确定边界值的方法(2)如果程序的规格说明给出的输入域或输出域是有序集合,则应选取集合的第一个元素和最后一个元素作为测试用例。如果程序中使用了一个内部数据
8、结构,则应当选择这个内部数据结构的边界上的值作为测试用例。n Test cases for ABS(x) :class x = 0, arbitrary value x = 100classes x = 0, on boundary :x = 0classes x = 0, below and above: x = -1, x = 1正常值(有效类)正常值(有效类): X1 = 123123边界值边界值: X2 = 12345边界值边界值: X3 = 1234567边界值边界值: X4 = 1边界值边界值: X5 = 0无效类的值无效类的值: X6 = -123123无效类的值无效类的值: X
9、7 = asdasd其它其它?BVA 示例2 测试测试 限制性用户输入:限制性用户输入:6位正整数位正整数 无效值无效值: X8 = 000123 X9 = asd123 X10 = EmptyBVA 示例3Test cases :任意的正常值: 随机选择几个选项 边界值: 选择所有选项 边界值: 一个都不选边界值: 选择一个选项二进制Term 取值范围取值范围BitNibbleByteWordKiloMegaGigaTera0 or 10-15 0-2550-65535 or 0-42949672951024104857610737418241099511627776ASCII TableC
10、haracterASCII ValueCharacter ASCII ValueNullSpace/0129;A0324748495057586465BYZabyz66899091969798121122123字符编辑域一些特殊的边界值First-1/Last+1Min-1/max+1Start-1/Finish+1Less than empty/ more than fulljust Over/Just Under有什么具体案例?3.3 基于组合技术和组合优化的方法3.3.1 判定表方法判定表元素判定表方法步骤条件桩动作桩规则判定表 示例1IDID项目名称项目名称R1R1R2R2R3R3R4
11、R4R5R5条件项C1此商品在经营范围NYYYYC2此商品可以发货YYNNC3此客户没有拖欠过付款YNYN动作项A1货到后允许客户转账1A2货到客户必须立即付款1A3重新组织货源11A4电话通知1A5书面通知11判定表示例判定表示例23.3.2 因果图法 分析软件规格说明文档描述的哪些是原因(输入条件),哪些是结果(输出条件),给每个原因和结果赋予一个标示符。 找出原因与结果,原因与原因之间的对应关系,划出因果图 在因果图上标上哪些不可能发生的因果关系,表明约束或限制条件 根据因果图,创建判定表,将复杂的逻辑关系和多种条件组合很具体明确的表示出来 把判定表的每一行作为依据设计测试用例。ijij
12、因果图的基本符合n或或- -关系:关系:如果因 i1 或或因 i2 或或因 in 存在时,结果 j 才出现。n与与- -关系:关系:只有当因 i1 与与因 i2 与与因 in 同时存在时,结果 j 才出现。j i1i2inj i1i2in因果图法示例(1)有效等价类有效等价类:输入条件有效类 .abs(N) N 0, N 0maxint k maxint, k maxint测试用例测试用例:maxintNresult maxint Nresult55105510000 5410error100-11 56105510011 000给定maxint 和 N ,如果结果 0 and b 0) th
13、en4. c = c / a5.end if6.if (a 1 or c 1) then7. c = c + 18.end if9.c = b + c程序控制流图示例:语句覆盖可发现的问题(a, b ,c)= (1, 1, 2)3689IFIFENDIFENDIFfeicbad457jh程序源代码1.dim a, b as integer2.dim c as double3.if (a 0 or b 0) then4. c = c / a5.end if6.if (a 1 and c 1) then7. c = c + 18.end if9.c = b + c程序控制流图示例:语句覆盖不能发现
展开阅读全文