软件测试中的影响分析

什么是影响分析?

影响分析定义为分析已部署的产品或应用程序中的更改所带来的影响。它提供了有关由于应用程序的特定部分或功能发生更改而可能受到影响的系统区域的信息。

分析的影响包括对需求、设计和架构的影响,对测试的影响以及对进度的影响。

随着新功能被整合到应用程序或产品中,检查这些新功能或更改对系统性能的影响变得至关重要。因此,会进行影响分析。

为什么要做变更影响分析?

  • 这样做是为了了解实施变更的可能结果。在产品中引入过多功能可能会降低产品的整体性能。
  • 确定在团队决定实施产品变更时可能需要修改的所有文件、文档和模型。
  • 估算实施变更所需的精力。
  • 确定实施变更所需的任务。
  • 它将列出对特定元素的依赖关系。

什么是影响分析文档?

影响分析文档可以用作清单。它用于在处理变更请求之前对其进行评估。影响分析文档应提供以下详细信息:

  • 问题的简要描述
  • 解释或举例说明缺陷如何导致失败和/或效率低下。
  • 包括复杂性估算。
  • 包括修复的成本和时间估算。
  • 待测试的功能。
  • 列出为变更创建的新测试用例。
  • 参考文档 - 提及参考文档、技术规范等。

示例

影响分析文档。

  1. 变更请求 ID
  2. 标题
  3. 描述
  4. 准备日期
  5. 优先级估算
    • 相对效益
    • 相对惩罚
    • 相对成本
    • 相对风险
  6. 估计总工作量:... 小时
  7. 估计损失的工作量:... 小时
  8. 估计进度影响:... 天
  9. 受影响的质量;
  10. 受影响的其他要求
  11. 受影响的其他任务
  12. 集成问题

如何展示影响分析的影响级别

影响分析可以根据颜色代码进行标记,以表示更改的严重性或更改对系统影响的程度。颜色代码可以是如下所示的任何内容。

  • 红色 - 强
  • 黄色 - 中等
  • 绿色 - 弱

Impact Analysis in software testing

上表解释了已实施更改的影响。

  • 标记为红色的功能表示已更改的主要功能,黄色的表示受更改影响较小的功能,绿色的表示影响最小的功能。
  • 垂直列出的功能表示已更改的功能,水平列出的功能表示可以影响执行更改的功能。例如,在上例中,功能 1 的更改影响了功能 3。
  • 对于一个功能和功能更多的更大项目,上述表格可能无济于事。在这种情况下,会采用另一种方法,开发人员会直接标记主要功能中的更改所带来的影响级别。如下所示,其中主要功能的影响已针对各自的子功能进行了标记。

Impact Analysis in software testing

执行影响分析需要回答的示例问题

  • 进行拟议更改可能产生的副作用或风险是什么?
  • 是否需要获取任何工具来实施和测试此更改?
  • 如果接受此更改,已投入的多少工作量将会丢失?
  • 拟议的更改是否会对性能要求产生不利影响?
  • 为了验证拟议的更改,是否需要其他用户输入?
  • 此更改是否会增加产品成本?
  • 拟议的更改是当前员工所具备知识和技能的吗?
  • 拟议的更改是否会对任何计算机资源提出不可接受的要求?

变更影响分析的最佳实践

  • 在开始影响分析之前,请确保测试请求未包含有关受更改影响的项目部分的信息。
  • 开发人员和测试人员之间保持持续沟通是必须的,以免遗漏最终产品中需要实施的任何更改。
  • 确定是否需要对用户界面进行任何更改、删除或添加。
  • 估算所需的验收测试、系统测试或集成测试用例的数量。
  • 确定拟议更改对另一个项目计划、配置管理计划或质量保证计划的任何影响。

摘要

  • 影响分析将确保应用程序的哪些部分需要更改。
  • 对系统影响的分析包括对需求、设计和架构的影响、对测试的影响等。
  • 它有助于分析需要进行何种程度的回归测试