软件工程案例开发与实践_第1页
软件工程案例开发与实践_第2页
软件工程案例开发与实践_第3页
软件工程案例开发与实践_第4页
软件工程案例开发与实践_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

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

文档简介

1、软件工程案例开发与实践软件工程案例开发与实践北京交通大学出版社北京交通大学出版社14.5 14.5 软件测试过程软件测试过程 单元测试的主要内容是模块接口测试。单元测试的主要内容是模块接口测试。 模块接口测模块接口测试中的被测模块并不是一个独立的程序,在考虑测试模块试中的被测模块并不是一个独立的程序,在考虑测试模块时,同时要考虑它和外界的联系,用一些辅助模块去模拟时,同时要考虑它和外界的联系,用一些辅助模块去模拟与被测模块相关联的模块。这些辅助模块可分为两种:与被测模块相关联的模块。这些辅助模块可分为两种: (1 1)驱动模块:相当于被测模块的主程序。它接收测试)驱动模块:相当于被测模块的主程

2、序。它接收测试数据,把这些数据传送给被测模块,最后输出实测结果。数据,把这些数据传送给被测模块,最后输出实测结果。 例如,模块例如,模块a a要调用模块要调用模块b b,现在测试模块,现在测试模块b b时,要编写一时,要编写一个驱动模块(代替模块个驱动模块(代替模块a a的功能)来调用模块的功能)来调用模块b b,( (假设模假设模块块a a是正确的是正确的) ) 检查是否模块检查是否模块b b的缺陷。的缺陷。 (2 2) 桩模块:用以代替被测模块调用的子模块。桩模块桩模块:用以代替被测模块调用的子模块。桩模块可以做少量的数据操作,不需要把子模块所有功能都带进可以做少量的数据操作,不需要把子模

3、块所有功能都带进来,但不允许什么事情也不做。来,但不允许什么事情也不做。14.5.1 单元测试单元测试 14.5.2集成测试集成测试 集成测试是根据实际情况对程序模集成测试是根据实际情况对程序模块采用适当的集成测试策略组装起来,块采用适当的集成测试策略组装起来,对系统的接口以及集成后的功能进行正对系统的接口以及集成后的功能进行正确校验的测试工作。确校验的测试工作。 通常,把模块组装成为系统的测试方通常,把模块组装成为系统的测试方式有两种:一次性集成测试方式式有两种:一次性集成测试方式 ;增值式增值式集成测试方式集成测试方式 .1. 1. 一次性集成测试方式一次性集成测试方式 一次性集成测试方式

4、也称作非增值式集成测试。一次性集成测试方式也称作非增值式集成测试。先分别测试每个模块,再把所有模块按设计要求放在一先分别测试每个模块,再把所有模块按设计要求放在一起结合成所需要实现的程序。起结合成所需要实现的程序。 如图如图12-612-6是所示按照一次性集成测试方式的实例是所示按照一次性集成测试方式的实例。如图。如图12-612-6(a a)所示表示的是整个系统结构,共包含)所示表示的是整个系统结构,共包含6 6个模块。具体测试过程如下:个模块。具体测试过程如下:(1 1)如图)如图12-612-6(b b)所示,为模块)所示,为模块b b配备驱动模块配备驱动模块d1d1,来模拟模块来模拟模

5、块a a对对b b的调用。为模块的调用。为模块b b配备桩模块配备桩模块s1s1,来模,来模拟模块拟模块e e被被b b调用。对模块调用。对模块b b进行单元测试;进行单元测试;(2 2)如图)如图12-612-6(d d)所示,为模块)所示,为模块d d配备驱动模块配备驱动模块d3d3,来模拟模块来模拟模块a a对对d d的调用。为模块的调用。为模块d d配备桩模块配备桩模块s2s2,来模,来模拟模块拟模块f f被被d d调用。对模块调用。对模块d d进行单元测试;进行单元测试; (3)如图)如图12-6(c)、图)、图11-5(e)、图)、图11-5(f)所示)所示,为模块,为模块c、e、

6、f分别配备驱动模块分别配备驱动模块d2、d4、d5。对。对模块模块c、e、f分别进行单元测试;分别进行单元测试; (4)如图)如图12-6(g)表示,为主模块)表示,为主模块a配备三个桩模块配备三个桩模块s3、s4、s5。对模块。对模块a进行单元测试;进行单元测试; (5)在将模块)在将模块a、b、c、d、e分别进行了单元测试之分别进行了单元测试之后,再一次性进行集成测试;后,再一次性进行集成测试; (6)测试结束。)测试结束。 2. 增值式集成测试方式增值式集成测试方式 增值式集成测试方式有三种:增值式集成测试方式有三种: (1)自顶向下增值测试方式)自顶向下增值测试方式 主控模块作为测试驱

7、动,所有与主控主控模块作为测试驱动,所有与主控模块直接相连的模块作为桩模块;根据集模块直接相连的模块作为桩模块;根据集成的方式(深度或广度),每次用一个模成的方式(深度或广度),每次用一个模块把从属的桩模块替换成真正的模块;在块把从属的桩模块替换成真正的模块;在每个模块被集成时,都必须已经进行了单每个模块被集成时,都必须已经进行了单元测试;进行回归测试以确定集成新模块元测试;进行回归测试以确定集成新模块后没有引入错误。这种组装方式将模块按后没有引入错误。这种组装方式将模块按系统程序结构,沿着控制层次自顶向下进系统程序结构,沿着控制层次自顶向下进行组装。行组装。 如图12-7所示表示的是按照深度

8、优先方式遍历的自顶向下增值的集成测试实例。具体测试过程如下: 在树状结构图中,按照先左后右的顺序确定模块集成路线; (1)如图12-7(a)所示,先对顶层的主模块a进行单元测试。就是对模块a配以桩模块s1、s2和s3,用来模拟它所实际调用的模块b、c、d,然后进行测试; (2)如图12-7(b)所示,用实际模块b替换掉桩模块s1,与模块a连接,再对模块b配以桩模块s4,用来模拟模块b对e的调用,然后进行测试; (3)图12-7(c)是将模块e替换掉桩模块s4并与模块b相连,然后进行测试; (4)判断模块e没有叶子结点,也就是说以a为根结点的树状结构图中的最左侧分支深度遍历结束。转向下一个分支;

9、 (5)图12-7(d)所示,模块c替换掉桩模块s2,连到模块a上,然后进行测试; 判断模块c没有桩模块,转到树状结构图的最后一个分支; (6)如图12-7(e)所示,模块d替换掉桩模块s3,连到模块a上,同时给模块d配以桩模块s5,来模拟其对模块f的调用。然后进行测试; (7)如图12-7(f)所示,去掉桩模块s5,替换成实际模块f连接到模块d上,然后进行测试; (8)对树状结构图进行了完全测试,测试结束。 (2)自底向上增值测试方式 组装从最底层的模块开始,组合成一个构件,用以完成指定的软件子功能。编制驱动程序,协调测试用例的输入与输出;测试集成后的构件;按程序结构向上组装测试后的构件,同时除掉驱动程序。 (3) 混合增值测试

温馨提示

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

最新文档

评论

0/150

提交评论