slide09 - Testing.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
slide09 - Testing.ppt

本文观看结束!!! * * 举例:Date * 举例:Date * 路径测试 路径测试 路径测试是确定组件实现中错误的白盒测试技术,它假设通过至少一次代码的所有可能路径,大多数错误将引起故障。 路径测试是在程序控制流图的基础上,分析控制构造的环路复杂 性,导出基本可执行路径集合,由此设计测试用例,并保证在测试中 程序的每一个可执行语句至少要执行一次。 程序控制流图 符号○为控制流图的一个结点,表示一个或多个无分支的源程序语句。 箭头为边,表示控制流的方向。 * 路径测试 * 举例:SelectSort 举例:函数SelectSort( )的代码 Void SelectSort( datalist list ) { for (inti=0; ilist.n-1; i++) { intk=i; for (intj=i+1; jlist.n; j++) if (list.V[j].getKey() list.V[k].getKey()) k=j; if (k!=i) Swap(list.V[i], list.V[k]); } } 问题:如何使用路径测试方法设计测试用例? * 举例:SelectSort * 举例:SelectSort 测试用例 Path1:取n=1 Path2:取n=2 预期结果:路径5-8-3 不可到达 Path3:取n=2 预期结果:路径5-9-3 不可到达 路径1-2-4-6-5-8-3:取n=2,v[0]=2, v[1]=1 预期结果:k=1, v[0]=1, v[1]=2 路径1-2-4-6-5-9-3:取n=2,v[0]=2, v[1]=1 预期结果:k=1, 路径9-3 不可到达 * 举例:SelectSort 测试用例 路径1-2-4-7-5-8-3:取n=2,v[0]=1, v[1]=2 预期结果:k=0, 路径8-3 不可到达 路径1-2-4-7-5-9-3:取n=2,v[0]=1, v[1]=2 预期结果:k=0, v[0]=1, v[1]=2 说明:路径测试技术不适合面向对象语言,例如多态性可以与不同的方法绑定,因此所有的绑定都需要确定并测试。 * 基于状态的测试 基于状态的测试 基于状态的测试主要考虑面向对象系统,它根据系统的 特定状态选择大量的测试输入,测试某个组件或系统,并将实际的输出与预期的结果相比较。 在类环境中,从类的UML 状态图中得出测试用例组成基于状态的测试。 举例:测试CourseOffering类 * 再工程活动 源代码转换 代码从原有的程序设计语言转换到一种新语言 逆向工程 分析程序并抽取信息记录其结构和功能 程序结构改善 分析和修改程序的控制结构, 使其更易读和好理解 程序模块化 重新组织程序的结构 数据再工程 改变程序处理的数据以反映程序的变更 * 举例:CourseOffering * 举例:CourseOffering * 举例:CourseOffering * 举例:CourseOffering * 举例:二进制加法器 1.Press button “C”:clear the result 2.Press button “0”:input 0 3.Press button “1”:input 1 4.Press button “+”:add 5.Press button “=”:display the result * 举例:二进制加法器 * 举例:二进制加法器 设计测试用例的原则 测试每一状态的每一种内部转换,验证程序在正常状态转换下与设计需求的一致性。 测试每一状态中每一种内部转换的监护条件,考虑条件为真、为假以及条件参数处于极限值附近的情况。 测试每一状态中是否可能发生奇异的内部转换,如在满20 位后连续按多次数字键的特殊情况。 测试状态与状态之间每一条转换路径,验证程序在合法条件下行为的正确性。 测试状态与状态之间每一条转换路径的监护条件,考虑条件为真、为假以及条件参数处于极限值附近的情况。 * 举例:二进制加法器 设计测试用例的原则(续) 分析状态与状态之间可能发生的异常转换,并设计 测试用例,如考察连续按加号或等号键的特殊情况。 将系统作为一个整体来看待,使用典型的加法算式验证系统的计算功能。 在二进制加法器的例子中,设计三个测试系列 基于内部转换的测试用例 基于状态之间转换的测试用例 基于加法算式的测试用例 * 举例:二进制加法器 * 举例:二进制加法器 * 举例:二进制加法器 * 举例:二进制加法器 * 举例:二进制加法器 * 举例:二进制加法器 * 面向对象的测试 面向对象的测试需要新的策略和方法,以反映面向对象的本质特性。 测试策略与方法 测试类的操

文档评论(0)

克拉钻 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档