博客
关于我
软件测试 集成测试
阅读量:324 次
发布时间:2019-03-04

本文共 989 字,大约阅读时间需要 3 分钟。

驱动模块

子节点要有驱动模块
桩模块
有子模块就需要开发桩模块

成对继承

基本思想:将每个集成测试用例限定在一对调用单元上,每个集成测试用例都是最小的集成单元,仅涉及一对调用的接口

邻居集成

(一般三个为一组)

  1. 邻居是指某个指定模块及其所有直接调用该模块的上层模块以及所有被该模块直接调用的下层模块
  2. 将每个集成测试用例限定在某个节点的邻居上,针对某个模块的集成测试用例应同时包含该模块及其邻居

基于独立路径的测试

以函数调用图为单位

  1. 规模估算:环复杂度V,测试用例数量也是V,但是存在不可能路径,需要去掉或编写桩模块构造可行路径
  2. 特点分析:减少桩和驱动模块开发量
  3. 不足:缺陷定位困难

遍历

大爆炸集成

  1. 基本思想:将所有经过单元测试的模块一次性组装到被测系统中进行测试,完全不考虑模块之间的依赖性和可能的风险
  2. 优点:测试规模小
  3. 缺点:难以定位问题

自顶向下集成

广度优先:横向一层一层测

深度优先:一条一条测

自底向上的集成

先从叶子节点开始测试

优点
  1. 优先从叶子节点开始测试,有助于早期发现底层模块中复杂算法的缺陷,且驱动模块的开发有利于规范和约束系统上层模块的设计,在一定程度上增加系统可测试性
  2. 单个测试用例包含多个模块,可从整体上降低测试用例规模
  3. 多个集成测试可并行展开,确保测试工作进度(可以多个节点一起测试)
不足
  1. 驱动模块的开发和维护工作量较大
  2. 难以早期发现上层模块中有关逻辑和控制方面的缺陷
  3. 直至加入最后一个模块才能看到整个系统框架,难以早期发现时序问题和资源竞争问题

混合集成(三明治集成)

将自顶向下和自底向上结合起来

在调用图上按照一定的策略,分别自顶向下和自底向上展开集成,并在子树上进行大爆炸集成

策略一

将系统划分三层 中间层为目标层

测试时对目标层上面的层使用自顶向下的集成策略,对目标层下面的层使用自底向上的集成策略

策略二

基于策略1并对目标层采用独立测试策略,确保目标层模块在集成测试之前得到充分的测试

策略三

对包含读操作的子系统自底向上集成测试直至根节点,然后对包含写操作的子系统自顶向下集成测试直至叶子节点

优势

结合了自顶向下和自底向上的集成的优势

不足

  1. 中间的目标层可能得不到充分的测试
  2. 需要同时开发桩和驱动模块,这部分工作量比较大
  3. 需在子树上进行大爆炸集成,一旦发现缺陷,涉及的接口数量较多,增加了缺陷定位难度

对于有输入的:自顶向下

在这里插入图片描述

转载地址:http://qifh.baihongyu.com/

你可能感兴趣的文章
mysql 断电数据损坏,无法启动
查看>>
MySQL 日期时间类型的选择
查看>>
Mysql 时间操作(当天,昨天,7天,30天,半年,全年,季度)
查看>>
MySQL 是如何加锁的?
查看>>
MySQL 是怎样运行的 - InnoDB数据页结构
查看>>
mysql 更新子表_mysql 在update中实现子查询的方式
查看>>
MySQL 有什么优点?
查看>>
mysql 权限整理记录
查看>>
mysql 权限登录问题:ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: YES)
查看>>
MYSQL 查看最大连接数和修改最大连接数
查看>>
MySQL 查看有哪些表
查看>>
mysql 查看锁_阿里/美团/字节面试官必问的Mysql锁机制,你真的明白吗
查看>>
MySql 查询以逗号分隔的字符串的方法(正则)
查看>>
MySQL 查询优化:提速查询效率的13大秘籍(避免使用SELECT 、分页查询的优化、合理使用连接、子查询的优化)(上)
查看>>
mysql 查询数据库所有表的字段信息
查看>>
【Java基础】什么是面向对象?
查看>>
mysql 查询,正数降序排序,负数升序排序
查看>>
MySQL 树形结构 根据指定节点 获取其下属的所有子节点(包含路径上的枝干节点和叶子节点)...
查看>>
mysql 死锁 Deadlock found when trying to get lock; try restarting transaction
查看>>
mysql 死锁(先delete 后insert)日志分析
查看>>