软件测试词典

首页

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 应用程序测试 白盒测试 工作流测试

有用的资源

有用的资源 讨论


软件测试 - 静态测试

软件测试涉及验证,以确保其按预期工作。静态测试用于检测缺陷,而无需实际执行软件的开发代码。

什么是软件静态测试?

软件静态测试也称为验证或非执行测试。它在软件开发生命周期 (SDLC) 的早期阶段进行,以减少在生产后期发现缺陷的可能性。在 SDLC 的早期阶段(也称为验证过程)更容易找到错误的根本原因并修复它们。动态测试时未检测到的问题将在静态测试时发现。

软件静态测试可以手动进行,也可以借助某些工具进行。它有助于提高软件的质量和可维护性,最终有助于从长远来看节省成本。

软件静态测试的必要性

软件静态测试的必要性如下 −

  • 进行软件静态测试是为了确保软件从 SDLC 一开始就没有缺陷。这是因为随着软件规模的增加,隔离和修复缺陷变得更加困难。
  • 进行动态测试比静态测试更昂贵。
  • 进行静态测试所需的时间比动态测试少。
  • 与动态测试相比,软件静态测试在 SDLC 的早期阶段检测到缺陷。因此,与动态测试阶段检测到的错误相比,它们更容易修复,成本也更低。
  • 软件静态测试降低了在生产级别发现错误的概率。

软件静态测试的目标

软件静态测试的目标列在下面 −

  • 软件静态测试的目标是在 SDLC 的初始阶段检测错误。
  • 由于错误检测得早,因此更容易找到其根本原因,并在软件静态测试阶段修复它们。
  • 由于错误检测得早,解决它们所需的时间、精力和成本更少。
  • 软件静态测试提高了软件质量,并确保其遵守所有编码标准和指南。
  • 通过识别缺陷,它有助于最大限度地降低动态测试的成本前进。

静态测试的特点

静态测试阶段测试的软件功能如下 −

  • 软件静态测试确保单元测试用例有效、完整且按照标准编写。
  • 软件静态测试确保业务需求清晰明确。
  • 软件静态测试评估代表与软件实际通信的所有用例。
  • 软件静态测试验证原型是否按照软件设计和功能创建。
  • 软件静态测试确保系统需求清晰明确。
  • 软件静态测试分析测试数据并确认它们涵盖所有场景组合。
  • 软件静态测试确认每个需求都至少附加到一个测试案例。
  • 软件静态测试充当培训指南,描述所有软件功能和用户指南。
  • 软件静态测试检查性能测试用例并确认它们涉及每个重要的性能指标。

不同的软件静态测试技术

不同的软件静态测试技术称为审查和静态分析。审查类型可以通过简单的图表给出 −

Static Testing in Test Life Cycle

静态分析包括以下列出的项目 −

如何进行软件静态测试?

软件静态测试按照以下列出的步骤执行 −

步骤 1 − 软件静态测试从规划测试目标、范围和测试策略开始。它包括要验证的模块、测试方法和要使用的工具的识别。

步骤 2 − 在此步骤中,准备不同的工件,如测试用例、需求和设计文档、源代码等。

步骤 3 − 进行静态分析以验证代码并检查其是否符合标准、质量、安全性和合规性,借助多种工具而不是运行代码。

步骤 4 − 在一小群专家的帮助下完成代码审查,以查找代码中的错误并识别所用方法中的错误

步骤 5 − 报告并记录静态测试中检测到的缺陷。

步骤 6 −生成软件静态测试报告以评估软件质量。

软件静态测试的优势

软件静态测试的优势如下 −

  • 软件静态测试有助于尽早发现缺陷,并能以更少的精力和成本快速解决这些缺陷。
  • 软件静态测试可检测常见错误,即语法错误、空指针异常等。
  • 软件静态测试使代码更加结构化和易于维护。因此,它提高了代码质量。
  • 软件静态测试在软件的所有开发阶段都提供了快速反馈。
  • 软件静态测试确定缺陷的实际位置。

软件静态测试的缺点

软件静态测试的缺点如下 −

  • 软件静态测试不会检测仅在运行时出现的错误,例如内存泄漏、性能问题等。
  • 只有审阅者经验丰富,并具备正确的知识和技能,软件静态测试才能更有成效。
  • 对于大型和复杂的项目,软件静态测试需要时间。
  • 软件静态测试依赖于人工干预,因为它是在人工审阅和检查的帮助下进行的。

软件静态测试应遵循的最佳实践测试

软件静态测试应遵循的最佳实践如下 −

  • 应从项目一开始就确定软件静态测试的目的和目标。
  • 应确定符合行业标准的审查和编码标准的清单项目。
  • 软件静态测试应集中在软件代码的高风险部分。
  • 所有团队成员都应了解如何执行静态测试。
  • 所有审查活动都应进行管理和跟踪。
  • 软件静态测试阶段进行的所有活动和沟通都应是正式的。

用于软件静态测试的不同工具

用于软件静态测试的不同工具如下 −

  • Checkstyle
  • Soot
  • SourceMeter
  • Lint
  • SonarQube

软件静态测试和动态测试的区别

软件静态测试和动态测试的区别如下 −

Sr.No. 静态测试 动态测试
1 用于在不实际执行代码的情况下检测软件中的缺陷。 用于分析软件的动态特性。
2 用于降低在软件中发现错误的概率。 用于发现错误,并解决它们。
3 它在 SDLC 的早期阶段执行。 它在 SDLC 的后期阶段执行。
4 软件代码根本没有运行。 软件代码正在运行。
5 它在代码部署之前完成。 它在代码部署后完成。
6 它更便宜。 它更昂贵。
7 按照清单项目完成。 按照测试用例完成。
8 完成所需时间更少。 由于需要执行测试用例,因此需要更多时间完成。
9 检测到更多缺陷。 检测到更少缺陷。
10 包括非正式审查、演练、技术和代码审查以及检查。 包括功能和非功能测试。
11 它涉及验证程序。 它涉及确认程序。

结论

至此,我们对软件静态测试教程的全面介绍就结束了。我们首先描述了什么是软件静态测试,软件静态测试的必要性是什么,软件静态测试的目标是什么,在静态测试期间测试软件的哪些功能,有哪些不同的软件静态测试技术,如何执行软件静态测试,软件静态测试的优点是什么,软件静态测试的缺点是什么,软件静态测试应遵循的最佳实践是什么,软件静态测试使用的不同工具是什么,以及软件静态测试和动态测试之间的区别是什么。这使您具备了软件静态测试的深入知识。明智的做法是继续实践你所学到的知识,并探索与软件测试相关的其他知识,以加深你的理解并拓宽你的视野。