软件测试基础系列培训 -等价类和边界值方法.ppt_第1页
软件测试基础系列培训 -等价类和边界值方法.ppt_第2页
软件测试基础系列培训 -等价类和边界值方法.ppt_第3页
软件测试基础系列培训 -等价类和边界值方法.ppt_第4页
软件测试基础系列培训 -等价类和边界值方法.ppt_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

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

文档简介

高效设计测试用例(2) -等价类和边界值方法 n内部资料,请勿外传 技术质量部 * 2009年08月 软件测试基础系列培训 st-2009-004 课程目标 课程目标: 学会使用等价类方法设计测试用例 学会使用边界值方法设计测试用例 2 内容提要 第一节:等价类方法设计测试用例 等价类划分法介绍 等价类划分法实例 等价类划分法实践 等价类划分法关键 用例合并优化原则 第二节:边界值方法设计测试用例 3 等价类划分法简介 一种重要的,常用的黑盒测试用例设计方法 把所有可能的输入数据,即程序的输入域划分成 若干部分(子集),然后从每一个子集中选取少 数具有代表性的数据作为测试用例 4 什么是等价类 所谓等价类是指某个输入域的子集合, 所有等 价类的并集就是整个输入域 测试某等价类的代表值就等效于对于这一类其 它值的测试 等价类对于测试有两个重要的意义: 完备性整个输入域提供一种形式的完备性 无冗余性若互不相交则可保证一种形式的无冗 余性 5 等价类划分的原则 如何划分等价类? 先从程序的规格说明书中找出各个输入条件 再为每个输入条件划分两个或多个等价类,形成互 不相交的子集 6 等价类划分的原则 基本等价类划分: 有效等价类:是指对软件规格说明而言,是有意义 的、合理的输入数据所组成的集合。利用有效等价 类,能够检验程序是否实现了规格说明中预先规定 的功能和性能 无效等价类:是指对软件规格说明而言,是无意义 的、不合理的输入数据所构成的集合。利用无效等 价类,可以鉴别程序异常处理的情况,检查被测对 象的功能和性能的实现是否有不符合规格说明要求 的地方 7 等价类划分的原则 进行等价类划分的依据: 按照区间划分:在输入条件规定了取值范围或值的 个数的情况下,可以确定一个有效等价类和两个无 效等价类 例:语音合成系统音量调节v的大小为500到500 则有效等价类为500500和v=150 从等价类生成测试用例 根据已列出的等价类表生成测试用例,具体过程如 下: 为每个等价类规定一个唯一的编号 设计一个新的测试用例,使其尽可能多地覆盖尚未覆盖的 有效等价类。重复这个步,最后使得所有有效等价类均被 测试用例所覆盖 设计一个新的测试用例,使其只覆盖一个无效等价类。重 复这一步使得所有无效等价类均被覆盖 14 等价类划分法的关键 哪些情况适合于使用等价类划分法 最基本、有效的用例设计思想 相对独立的功能点 多输入多输出的系统 有相似输入输出的情况 15 等价类划分法的关键 化分好等价类 分析被测系统的功能和逻辑,明确输入输出要求 选择合适的等价类(按输入还是按输出) 确保等价类的完备(子集的并级是全集) 确保等价类的无冗余(各个子集互斥) 注意等价类的粒度(各个子集的粒度均匀) 注意多个等价类的组合情况 16 等价类优化 等价类较复杂的时候如何优化? 合并 将各个子类的有效等价类合并到一起 将功能重复的功能点合并到一起 权衡相似功能的变化,合并不变的部分,保留变化的部分 分离 尽量分离出无效等价类的所有子类 分离出逻辑相对独立的功能点 进一步划分相似功能的变化部分 17 实例:保险费率计算程序 保险公司计算保费费率计算程序 保费计算方式: 保费投保额保险费率 其中,保险费率依点数不同而有别,10点及10点以 上保险费率为0.6%,10点以下保险费率为0.1%;而 点数又是由投保人的年龄、性别、婚姻状况和抚养 人数来决定,具体规则如下: 18 保险费率计算程序的输入要求 分析程序规格说明中给出和隐含的对输入条件 的要求: 年龄:一位或两位非零整数,值的有效范围为199 性别:一位英文字符,只能取值m或f 婚姻:字符,只能取值已婚或未婚 抚养人数:空白或一位非零整数(19) 点数 :一位或两位非零整数,值的范围为199 19 保险费率计算程序的等价类表 根据输入条件设计等价类表: 20 保险费率计算程序的测试用例 根据等价类表生成测试用例: 21 课堂练习:qq帐号登陆 22 qq帐号:610位自然数 qq帐号登录:划分等价类 23 qq帐号登录:生成测试用例 24 课堂练习二:手机开户程序 25 输入手机号码,开户 手机号码为联通号码 划分等价类 26 优化等价类 27 用例分类用例编号用例描述测试数据覆盖等价类预期输出 正向用例 1001本地已销户号码133000000001、2、3、11 开户成功! 1002本地协议已过期号1、2、3、12 反向用例 1003空值空值13号码不能为空! 1004长号码前缀1795114 号码位数不正确! 1005号段前缀13315 1006长号码179511301234567816 1007号码加零01333728456717 1008号码加86861313728456718 1009 非号码字符 ab*7?& 19号码格式不正确 101011个空格 1011混合字符1330000000#20 1012外地号码1337564121121 号码不是合法的联通用户! 1013移动用户1386595292722 1014电信用户0228272600023 1015小灵通用户8911195824 1016非号码的数字1234567890125 1017黑名单号码130000000004、26号码在黑名单中! 1018已开户状态号码131000000015、27号码已开户! 1019正在开户状态号码132000000026、28 系统忙,暂时不能开户! 1020正在销户状态号码133000000039、29 1021暂停状态号码1530000000410、30 号码处于暂停状态! 1022正在暂停状态号码155000000057、31 1023在协议期内号码156000000068、32号码还在协议期内! 1024已开通此业务但停机号码1300000000733号码已开通此业务,暂时停机! 内容提要 第一节:等价类方法设计测试用例 第二节:边界值方法设计测试用例 什么是边界值分析法 常见的边界值 次边界值分析法 选择边界值划分测试用例的原则 边界值划分用例举例 29 软件在什么条件下更容易出错 哪些情况下软件更容易出错? 正常条件下? 边界条件下? 人们在长期的测试工作经验得知: 大量的错误都发生在输入或输出范围的边界上的, 而不是在输入范围的内部 因此,针对各种边界情况下设计测试用例,可 以查出更多的错误 30 边界值分析法 边界值分析法就是对输入或输出的边界值进行 测试的一种黑盒测试方法 通常边界值分析法是作为对等价类划分法的补 充,这种情况下,其测试用例来自等价类的边 界 31 怎样使用边界值设计用例 怎样用边界值分析法设计测试用例 首先确定边界情况,通常输入或输出等价类的边界 就是应该着重测试的边界情况 选取正好等于、刚刚大于或刚刚小于边界的值作为 测试数据,而不是选取等价类中的典型值或任意值 32 边界条件 常见的边界条件 对16-bit 的整数而言 32767 和 -32768 是边界 屏幕上光标在最左上、最右下位置 报表的第一行和最后一行 数组元素的第一个和最后一个 循环的第 0 次、第 1 次和倒数第 2 次、最后一次 33 次边界条件 普通边界条件是容易找到的,它在产品说明中 有定义,或者在使用软件的过程中确定 有些边界在软件内部,最终用户几乎看不到, 但是软件测试仍有必要检查,这样的边界条件 称为次边界条件 寻找次边界条件不要求测试人员需要有开发人 员那样阅读代码的能力,但是要求了解软件的 工作方式 34 次边界条件举例 软件中2的乘方 在软件接受用户输入11000范围内的数字, 合法区间包含1和1000,但是也要考虑2和999 ,另外0和1001属于无效等价类内容,也可以 考虑 35 术语范围或值术语范围或值 位0或1千1024 双位015兆1048576 字节0255亿1073741824 字065535万亿1099511627776 次边界值举例 ascii表 ascii不是连续表,09后面的ascii值时48 57,斜杠字符在0的前面,而冒号在9的后面 在测试文本输入或者文本转换时需要参考 ascii表 36 字符ascii值字符ascii值 null0149 space32b 66 /47y89 048z90 其他一些边界条件 另一种很明显的软件缺陷来源是当软件要求输 入时,跟本没有输入任何内容就按了enter, 这种情况的处理经常被开发遗忘,但是在实际 应用中常常发生 37 边界值的选择原则 对边界值设计测试用例,应遵循以下原则: 如果输入条件规定了值的范围,则应选取刚达到这个范围边 界值以及刚超越这个边界值的值作为测试数据 如果输入条件规定了值的个数,则选取比最大个数多1和比最 小数少1作为测试数据 根据规格说明的每个输出条件,使用前面两条原则 如果程序的规格说明给出的输入、输出域是有序集合,则应 选取集合的第一个元素和最后一个元素最为测试用例 如果程序中使用了数据结构,则选取这个数据结构边界的值 作为测试用例 分析规格说明,找出其他的边界条件 38 边界值举例 语音合成系统语音音量调节-500=100

温馨提示

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

评论

0/150

提交评论