软件工程导论class18面向对象实现论文.ppt

  1. 1、本文档共48页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
12.3.2 面向对象的集成测试 独立类:不使用服务器类的那些类 (2)基于使用的测试(use based testing). 首选测试独立类,把独立类都测试完后,再测试使用独立类的下一个层次的类(称为依赖类)。对依赖类一层一层的测试下去,直至把整个软件系统构造完为止。 注意测试不同类之间的协作错误,采用集群测试的方法。 12.3.3 面向对象的确认测试 确认测试:保证软件确实满足用户需求而进行的测试。验证系统功能和性能的有效性。 面向对象的确认测试检查用户的输入和输出。为了导出测试用例,须认真研究动态模型和描述系统行为的脚本,以确定最可能发现用户交互需求错误的场景。 可用黑盒测试方法设计测试用例。 12.4 设计测试用例 面向对象软件的测试用例的设计方法,还处于研究、发展阶段。 关注重点:设计适当的操作序列以检查类的状态。 12.4.1 测试类的方法 面向对象软件的小型测试着重测试单个类和类中封装的方法。 测试方法:随机测试、划分测试、基于故障的测试。 1 随机测试 将完成行为的各种操作,随机地产生它们的操作序列,以该操作序列测试系统。 例子:银行应用系统的帐户类有下列操作: Open, setup, deposit, withdraw, balance, summarize, creditLimit, close. 限制是:第1个操作是open, 最后一个是close 随机产生的测试用例: 1:open setup deposit deposit balance summarize withdraw close 2: open setup deposit withdraw deposit balance creditLimit withdraw close 2 划分测试 目的:减少测试类时需要的测试用例的数量 先分为输入,输出类 划分类别的方法 (1) 基于状态的划分 根据类操作改变类状态的能力来划分类操作 例子: P1: open setup deposit deposit withdraw withdraw close P2: open setup deposit summarize creditLimit withdraw close (1) 基于状态的划分 根据类操作改变类状态的能力来划分类操作 例子: 状态操作:deposit, withdraw 非状态操作: balance, summarize, creditLimit 改变状态测试P1: open setup deposit deposit withdraw withdraw close 不改变状态测试P2: open setup deposit summarize creditLimit withdraw close (2)基于属性的划分 根据类操作使用的属性来划分操作 例子:基于balance定义划分 使用balance操作 修改balance操作 与balance无关的操作 (3)基于功能的划分 根据类操作完成的功能来划分操作 例子:初始化(open, setup),计算(deposit, withdraw) 查询(balance, summarize,creditLimit), 终止(close) 3 基于故障的测试 首选推测软件中可能有的错误,然后设计出最可能发现这些错误的测试用例。 推测错误:仔细研究分析模型和设计模型 12.4.2 集成测试方法 对类间协作进行测试 和测试单个类相似,可以使用随机测试、划分测试、基于情景的测试、行为测试 1 多类测试 生成多个类的随机测试用例的步骤: (1)对每个客户类,使用类操作符列表来生成一系列随机测试序列。这些操作符向服务器类实例发送消息。 (2)对所生成的每个消息,确定协作类和在服务器对象中的对应操作。 (3)对服务器对象中的每个操作符,确定传递的消息。 (4)对每个消息,确定下一层被调用的操作符,并把这些操作符结合进测试序列中。 测试用例: R3:verifyAcct verifyPIN depositRep 为找到测试涉及的协作者,考虑每个操作相关联的消息。 Bank ValidationInfo 执行verifyAcct, verifyPIN Bank Account 执行depositReq 协作的新测试用例是: R4: verifyAcctbank [validAcctvalidation] verifyPINbank [validPINvalidation] depositReq [depositaccount] 2 从动态模型导出测试用例 使用类的状态图导出测试类的动态行为的测试用例。 设计出的用例应该覆盖所有状态。 操作序列应该使得account实例遍历所有

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档