软件测试词典

首页

A

验收测试 可访问性测试 主动测试 实际结果 临时测试 老化测试 敏捷测试 全对测试 Alpha 测试 API 测试 Arc 弧测试 异常测试 断言测试 审计测试 自动化软件测试

B

向后兼容性测试 基线工件 基础路径测试 基础测试集 调试 行为测试 基准测试 Beta 测试 大爆炸测试 二进制可移植性测试 黑盒测试 自下而上测试 边界测试 分支测试 广度测试 Bug测试 构建验证 业务流程 业务需求

C

能力成熟度模型 捕获/重放工具 因果图 代码覆盖率 代码冻结 代码检查 代码审查 代码演练 基于代码的测试 代码驱动测试 无代码测试 比较测试 兼容性测试 合规性测试 并发性测试 条件覆盖测试 配置测试 一致性测试 上下文驱动测试 控制流路径 转换测试 正确性 覆盖项目 循环复杂度

D

数据完整性测试 数据驱动测试 数据流测试 数据库测试 调试 决策覆盖测试 缺陷 缺陷记录和跟踪 缺陷生命周期 Delta 发布 依赖性测试 深度测试 破坏性测试 开发环境 文档测试 域测试 耐久性测试 动态测试

E

模拟器 端到端测试 耐久性测试 准入标准 等价分区测试 错误 错误猜测 错误植入 详尽测试 退出标准 预期结果 探索性测试

F

故障转移测试 失败 故障 故障注入测试 可行路径 功能测试 功能分解 功能要求 功能测试 模糊测试 前端测试

G

玻璃盒测试 全球化测试 Gorilla 测试 灰盒测试 GUI 测试

H

测试工具 启发式测试 混合集成测试

I

实施测试 增量测试 独立测试 不可行路径 检查 安装/卸载测试 集成测试 接口测试 国际化测试 系统间测试 互操作性测试 隔离测试 问题

K

关键字驱动测试 关键绩效指标 已知问题

L

LCSAJ 测试 负载生成器 负载测试 本地化测试 逻辑覆盖率测试 循环测试

M

可维护性 手动测试 大型机测试 基于模型的测试 修改条件测试 模块化驱动测试 猴子测试 突变测试

N

负面测试 非功能性测试 非破坏性测试

O

操作测试 正交阵列测试

P

配对测试 成对测试 并行测试 部分测试自动化 被动测试 路径测试 同行评审 渗透测试 性能测试 试点测试 可移植性测试 积极测试 后置条件 前提条件 预测结果 优先级 流程周期测试 渐进式测试 原型测试

Q

质量保证 质量控制 质量管理

R

随机测试 恢复测试 回归测试 候选版本 发布说明 可靠性测试 需求测试 基于需求的测试 需求可追溯性矩阵 结果 重新测试 Review 审查 风险测试 风险管理 根本原因

S

安全性测试 健全性测试 可扩展性测试 场景测试 时间表 Scrum 测试 脚本 安全测试 模拟 冒烟测试 浸泡测试 峰值测试 软件需求规范 稳定性测试 状态转换 静态测试 统计测试 存储测试 压力测试 结构测试 结构化演练 存根 符号执行 语法测试 系统集成测试 系统测试 被测系统

T

技术评审 测试方法 测试自动化 测试基础 测试平台 测试用例 测试用例设计技术 测试套件 测试完成标准 测试完成报告 测试完成矩阵 测试数据 测试数据管理 测试驱动开发 测试驱动程序 测试环境 测试执行 测试管理 测试成熟度模型 测试计划 测试步骤 测试策略 测试工具 线程测试 自上而下的集成测试 全面质量管理 可追溯性

U

单元测试 无法访问的代码 可用性测试 用例测试 用户验收测试 用户界面测试

V

V 模型 验证测试 验证测试 虚拟用户 容量测试 漏洞测试

W

Web 应用程序测试 白盒测试 工作流测试

有用的资源

有用的资源 讨论


软件测试 - 自下而上测试

软件测试分为多个阶段,即单元测试、集成测试、系统测试和验收测试。自下而上方法是集成测试下的概念之一,其中通过组合多个组件进行验证,然后根据程序源代码的控制流从底部向上移动到顶部。

什么是软件自下而上测试?

软件自下而上测试是集成测试的类别之一,其中首先测试每个组件,然后将它们逐步与其他组件组合以形成一个复杂的系统,直到测试整个软件。首先验证较低级别的组件,然后验证较高级别的组件。

自下而上测试是一种用户友好的测试方法,有助于提高软件质量。让我们以汽车为例,它由多个模块组成,如刹车、发动机、车轮、方向盘、燃油控制等。首先单独测试每个单独的模块,然后与其他模块集成。例如,首先验证制动系统,然后将其与方向盘组合。集成后,测试两个模块之间的通信、流程、同步等。它们都应该能够作为一个单元工作。因此,它有助于尽早发现错误,而不是在整辆车制造完成后再进行测试。

执行自下而上测试的步骤

执行软件自下而上测试需要执行的步骤如下 −

步骤 1 − 通过组合较低级别的组件来创建组。

步骤 2 − 实现一个控制程序进行验证。这被称为驱动程序,它有助于调节测试用例的输入和输出。

步骤 3 − 测试仅针对较低级别的组件进行。

步骤 4 −最后,移除驱动程序,并通过在整个程序流程中从底部向上移动到顶部来组合各个集群。

自下而上测试的示例

上图显示了自下而上测试的架构 −

自下而上测试

在这里,各个组件组合在一起,如组件 1 和 2 所示。然后,每个组件都必须借助驱动程序 A 和 B 进行验证。测试完成后,移除两个驱动程序,并将组件 1 和 2 与模块 A 集成,然后我们可以与其他顶级模块一起向上移动。

自下而上集成 - 流程图

自下而上测试由以下流程图 −

表示 测试生命周期中的自下而上测试

自下而下方法的集成顺序如下 −

4,2
5,2
6,3
7,3
2,1
3,1

测试方法

+ 首先,使用驱动程序分别测试 4、5、6、7。
+ 测试 2,使其分别调用 4 和 5。
如果发生错误,我们知道问题出在其中一个模块中。
+ 测试 1,使其调用 3,如果发生错误,我们知道
问题出在 3 中或 1 和 3 之间的接口中

虽然顶层组件是最重要的,但使用此策略最后进行测试。在自下而上的方法中,在测试组件 4、5、6、7 时,组件 2 和 3 被驱动程序替换。它们通常比存根更复杂。

自下而上测试的优点

自下而上测试的优点如下 −

  • 设计和提出不同的测试条件是一个非常简单的过程。
  • 可以非常快速地得出测试结果。
  • 不需要对软件的内部工作有任何了解。
  • 低级组件经过彻底测试,并且与面向对象架构兼容。
  • 它有助于在软件开发生命周期 (SDLC) 的早期阶段检测错误。
  • 它通过将复杂的模块分解为更小的单元然后验证它们来简化测试过程。
  • 它为软件提供了模块化和易于维护的特性。
  • 它提高了软件的整体质量和性能软件。

自下而上测试的缺点

自下而上测试的缺点如下 −

  • 在顶层模块,进行自下而上测试变得困难。
  • 对于复杂的软件,完成自下而上的测试需要大量时间,其中各个组件需要在与其他组件组合之前进行验证。
  • 它不包括软件系统级功能的测试,因为它们只有在集成所有组件后才准备就绪。
  • 它需要构建驱动程序和存根才能完成自下而上的测试。

我们为什么要进行自下而上的测试?

进行自下而上测试的原因如下 −

  • 它有助于在软件开发的早期阶段识别缺陷生命周期 (SDLC)。
  • 在与其他组件集成之前,对各个组件进行测试,因此自下而上的测试有助于实现高效的调试。
  • 这是一种增量方法。
  • 它可以在软件早期识别潜在风险。
  • 自下而上测试方法的增量和迭代方法使其与敏捷开发方法兼容。

结论

这就是我们对软件自下而上测试教程的全面介绍。我们首先描述了什么是软件自下而上测试,执行软件自下而上测试的步骤是什么,自下而上测试的示例,自下而上测试的优点是什么,自下而上测试的缺点是什么,以及我们为什么要执行自下而上的测试。这使您具备了软件自下而上测试的深入知识。明智的做法是继续实践你所学到的知识,并探索与软件测试相关的其他知识,以加深你的理解并拓宽你的视野。