什么是静态测试?软件测试技术

什么是静态测试?

静态测试是一种软件测试技术,用于在不执行代码的情况下检查软件应用程序中的缺陷。进行静态测试是为了在开发早期阶段避免错误,因为这样更容易识别和解决错误。它还有助于发现动态测试可能无法发现的错误。

它的对应是动态测试,它在代码运行时检查应用程序。有关静态测试和动态测试之间详细区别的教程,请参阅此内容。

静态测试技术的两种主要类型是

  • 手动检查:手动检查包括手动分析代码,也称为审查
  • 使用工具进行自动化分析:自动化分析基本上是使用工具进行的静态分析。

静态测试技术

  • 非正式审查
  • 走查
  • 技术审查
  • 检查
  • 静态分析
    • 数据流
    • 控制流

Static testing techniques

用于静态测试的工具

用于静态测试的各种工具如下:

什么是测试审查?

静态测试中的审查是为发现任何程序设计中的潜在缺陷而进行的过程或会议。审查的另一个意义是,所有团队成员都能了解项目的进展,有时思想的多样性可能会带来出色的建议。文件由人员直接检查,并解决差异。

审查可进一步分为四个部分

  • 非正式审查
  • 走查
  • 技术审查
  • 检查

在审查过程中,有四种类型的参与者参与测试

  • 主持人:执行入口检查、跟进返工、辅导团队成员、安排会议。
  • 作者:负责修复发现的缺陷并提高文档质量
  • 记录员:在审查期间记录缺陷并参加审查会议
  • 审查员:检查材料是否存在缺陷并进行检查
  • 经理:决定审查的执行并确保实现审查过程目标。

静态测试期间更容易发现的缺陷类型是

  • 偏离标准
  • 不可维护的代码
  • 设计缺陷
  • 缺少需求
  • 不一致的接口规范

通常,静态测试中发现的缺陷是由于安全漏洞、未声明的变量、边界违规、语法违规、不一致的接口等原因造成的。

成功进行静态测试过程的技巧

在软件工程中执行静态测试过程的一些有用技巧。

  • 只关注真正重要的东西
  • 明确规划和跟踪审查活动。软件走查和检查通常合并到同行审查中
  • 通过示例培训参与者
  • 解决人员问题
  • 根据项目文化保持流程正式
  • 持续改进 – 流程和工具
  • 通过消除测试执行中的主要延迟,可以减少测试成本和时间

为什么要进行静态测试?

进行静态测试的原因如下:

  • 早期缺陷检测和纠正
  • 缩短开发时间
  • 降低测试成本和时间
  • 提高开发生产力
  • 在测试后期减少缺陷

静态测试中测试什么

在静态测试中,测试以下内容:

  • 单元测试用例
  • 业务需求文档 (BRD)
  • 用例
  • 系统/功能需求
  • 原型
  • 原型规范文档
  • 数据库字段字典电子表格
  • 测试数据
  • 可追溯性矩阵文档
  • 用户手册/培训指南/文档
  • 测试计划策略文档/测试用例
  • 自动化/性能测试脚本

如何执行静态测试

为了执行静态测试,它以以下方式进行,

  • 执行检查过程以完全检查应用程序的设计
  • 对每个正在审查的文档使用清单,以确保所有审查都完全覆盖

执行静态测试的各种活动是

  1. 用例需求验证:它验证所有最终用户操作以及与之相关的任何输入和输出是否都已识别。用例越详细和彻底,测试用例就越准确和全面。
  2. 功能需求验证:它确保功能需求识别所有必要的元素。它还查看数据库功能、接口列表以及硬件、软件和网络需求。
  3. 架构审查:所有业务层流程,如服务器位置、网络图、协议定义、负载平衡、数据库可访问性、测试设备等。
  4. 原型/屏幕模型验证:此阶段包括需求和用例的验证。
  5. 字段字典验证:UI 中的每个字段都已充分定义,可以创建字段级验证测试用例。检查字段的最小/最大长度、列表值、错误消息等。

摘要

  • 静态测试旨在尽早发现缺陷。
  • 静态测试不能替代动态测试,两者发现不同类型的缺陷
  • 审查是静态测试的有效技术
  • 审查不仅有助于发现缺陷,还有助于理解缺失的需求、设计缺陷、不可维护的代码。如果您正在寻找有助于此过程的工具,这里有一个全面的最佳代码审查工具列表,您可能会觉得有用。