软件集成测试策略和方法
文件编号 文件状态 [ ]草稿 [ ] 正式发布 [ ]正在修改 当前版本 拟 制 日期 审 核 日期 批 准 日期
修订历史记录
变更版本号 日期 A - 增加 M - 修订 D - 删除 摘 要 备注 变更类型 修改人 (A*M*D)
目 录
1
引言 ................................................................. 4
目的 .................................................................... 4 范围 .................................................................... 4
2
集成测试策略和方法 ................................................. 4
测试设计技术与策略 ...................................................... 4 自顶向下方法 ............................................................ 4 自底向上方法 ............................................................ 5 “三明治”方法 .......................................................... 5
1 引言
1.1
目的
指导软件项目组进行有效的系统集成测试。 1.2
范围
本指南适合公司软件开发部的所有软件项目。
2 集成测试策略和方法
2.1
测试设计技术与策略
进行软件集成测试的测试用例包括白盒法、黑盒法等多种设计技术。软件集成也有多种不同的策略。这些策略总的来说可以分为两种:
A) 非增量方式
先测试好每一个软件单元,然后依次集成在一起再测试整个程序。本方式是一种很直接、原始的集成方式,它把所有通过单元测试的模块一块儿地全部集成在一起,直接集成为软件系统,并对它进行测试。
采用这种方式的原因是期望它可以带来方便的、快捷的集成效果。但这种方法遭到广大测试专家的批评,普遍认为它会引起混乱,且难以确定错误源的位置。
B) 增量方式
逐步把一个要被集成的软件单元或部件,同已测试好的软件部件结合起来测试。增量方式主要包括自顶向下、自底向上、自顶向下与自低向上相结合等方式。
增量方式的优点是:占用人工少;可以较早发现模块接口错误;容易排错;测试效果好,比较彻底。
增量方式的优点:占用机器时间少;有利于并行开发。 2.2
自顶向下方法
自顶向下集成法是一个模块一个模块地集成软件的方法。按照控制的结构,从主控模块开始,向下地逐个把模块连结起来。把附属于主控模块的子模块等集成起来的方式有“深度优先”与“宽度优先”两种集成方法。
A)深度优先法:先把结构中的一条主要的控制路径上的全部模块逐步集成起来(主要路径的选择与特定的应用特性有关,多少带有主观随意性。)然后再连接其它的控制路径。
B)宽度优先法:是从结构的顶层开始逐层往下集成。 集成的过程可以分为以下五个步骤:
主控模块用作测试驱动器。直接附属于主控模块的各模块全部用桩模块代替。 按所选的集成法(即深度优先法或宽度优先法)每次用一个真模块取代一个附属的桩模块。
当装入每一个真模块时都要进行测试。
作完每一组测试后又再用一个真模块代替另一个桩模块。
可以进行回归测试(即重新再作过去作过的全部或部分测试),以便肯定没有新的错误发生。 2.3
自底向上方法
自底向上集成方法是从软件结构中最底层的、最基本的软件单元开始进行集成和测试。这样,在逐步向上集成过程中下层模块总是存在的,也就是不再需要桩模块了,但却需要调用这些模块开展工作的驱动模块。
自底向上集成可以按下列步骤实施:
1、低层的模块组成簇,以执行某个特定的软件子功能。
2、编写一个驱动模块作为测试的控制程序,和被测试的簇连在一起,负责安排测试用例的输入输出。
3、对簇进行测试。
拆去各个小簇的驱动模块,把几个小簇合并成大簇,再重复做1、2及3步。这样按软件结构逐步向上集成。 2.4
“三明治”方法
自顶向下测试的主要优点是能较早显示出整个程序的轮廓。主要缺点是,当测试上层模块时使用桩模块较多,很难模拟出真实模块的全部功能,部分测试内容被迫推迟,直至换上真实模块后再补充测试。
自底向上测试从下层模块开始,设计测试用例比较容易,但是在测试的早期不能显示出程序的轮廓。
针对自顶向下、自底向上方法各自的优点和不足,人们提出了自顶向下和自底向上相结合,从两头向中间逼近的混合时集成方法,被形象地称之为“三明治”方法。其具体步骤为:
A) 对上层模块采取自顶向下测试; B) 对关键模块或子系统采取自底向上测试。
C) 混合式的“三明治”方法,综合了自顶向下、自底向上两种方法的长处。
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- xiaozhentang.com 版权所有 湘ICP备2023022495号-4
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务