软件工程技术方案.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 常熟理工学院 软件工程课程 */172 面向对象语境对测试的影响 继承、封装、多态性、基于消息的通信等概念都是面向对象软件的重要特征,它们对面向对象测试有很大的影响。 单元 类是面向对象软件中的单元,传统的单元测试策略仍然适用。 常熟理工学院 软件工程课程 */172 封装 由于属性和操作被封装在类中,因此测试时很难获得对象的某些具体信息(除非提供内置操作来报告这些信息),从而给测试带来困难。 继承 测试了父类的操作后,并不表示其子类就不必对继承的操作进行测试。 多态性 在测试时,应覆盖反映多态的所有实现方法。 基于消息的通信 面向对象软件是通过消息通信来实现类之间的协作,它们没有明显的层次控制结构,因此,传统的自顶向下和自底向上集成策略不适用于面向对象软件测试。 常熟理工学院 软件工程课程 */172 面向对象的测试策略 把类作为面向对象软件的单元,传统的单元测试等价于面向对象中的类测试,也称类内测试。它包括类内的方法测试和类的行为测试。 面向对象中的类间测试(interclass testing)相当于面向对象的集成测试。它有两种集成策略: 基于线程的测试(thread-based testing):集成对回应系统的一个输入或事件所需的一组类,每个线程被集成并分别测试,应用回归测试以保证没有产生副作用。 基于使用的测试(use-based testing):通过测试那些几乎不使用服务器类的类(称为独立类)而开始构造系统,在独立类测试完成后,下一层的使用独立类的类,称为依赖类,被测试。这个依赖类层次的测试序列一直持续到构造完整的系统。 常熟理工学院 软件工程课程 */172 面向对象的确认测试和系统测试策略与传统的确认测试和系统测试策略相同,在面向对象确认测试时,应该利用用例模型,通过用例提供的场景来发现与用户需求不一致的错误。 常熟理工学院 软件工程课程 */172 面向对象测试用例设计 传统的测试用例设计方法及其思想在面向对象测试中仍是可用的。 类内测试 测试类中的每个操作(相当于传统软件中的函数或子程序),通常采用白盒测试方法,如逻辑覆盖、基本路径覆盖、数据流测试、循环测试等 测试类的行为(通常用状态机图来描述),利用状态机图进行类测试时,可考虑覆盖所有状态、所有状态迁移等覆盖标准,也可考虑从初始状态到终止状态的所有迁移路径的覆盖 常熟理工学院 软件工程课程 */172 划分测试(partition testing),这种方法与等价类划分方法相似,它将输入和输出分类,并设计测试用例来处理每个类别。划分的方式有多种: 基于状态的划分是根据操作改变类状态的能力对操作分类。 基于属性的划分是根据使用的属性对操作分类,如使用属性a的操作、修改属性a的操作、既不使用又不修改属性a的操作。 基于类别的划分是根据操作的种类对类操作分类,如初始化操作、计算操作、查询操作、终止操作。 常熟理工学院 软件工程课程 */172 类间测试 类间测试主要测试类之间的交互和协作。在UML中通常用顺序图和通信图来描述对象之间的交互和协作。可以根据顺序图或通信图,设计作为测试用例的消息序列,来检查对象之间的协作是否正常。 基于场景的测试 场景是用例的实例,它反映了用户对系统功能的一种使用过程,基于场景的测试主要用于确认测试,在类间测试时也可根据描述对象间的交互场景来设计测试用例。 常熟理工学院 软件工程课程 */172 内容摘要 软件测试基础 白盒测试 黑盒测试 测试策略 面向对象测试 11.6 测试完成标准 调试 常熟理工学院 软件工程课程 */172 测试完成的标准 因为无法判定当前查出的错误是否是最后一个错误,所以决定什么时候停止程序测试就成了最困难的问题,但是测试最后一定要停止的。 几种实用的测试完成标准: Musa和Ackerman提出了一个基于统计标准的答复:“不,我们不能绝对地认定软件永远也不会再出错,但是相对于一个理论上合理的和在试验中有效的统计模型来说,如果一个在按照概率的方法定义的环境中,1000个CPU小时内不出错运行的概率大于0.995的话,那么我们就有95%的信心说,我们已经进行了足够的测试”。 常熟理工学院 软件工程课程 */172 使用指定的测试用例设计方法产生测试用例,运行这些测试用例均未发现错误(包括发现错误后已被纠正的情况),则测试可终止。 观察测试阶段中单位时间内发现错误数目的曲线: 单发 位现 时的 间错 内误

文档评论(0)

x5511167 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档