估计技术 - 测试


测试工作并不基于任何明确的时间范围。无论测试是否完成,这些努力都会持续到设定一些预先确定的时间表为止。

这主要是因为按照惯例,测试工作量估计是开发估计的一部分。仅在使用 WBS 的估计技术(例如 Wideband Delphi、三点估计、PERT 和 WBS)的情况下,您才能获得测试活动的估计值。

如果您获得了功能点 (FP) 的估计值,那么根据 Caper Jones,

测试用例数量=(功能点数量)×1.2

一旦获得了一定数量的测试用例,您就可以从组织数据库中获取生产力数据并得出测试所需的工作量。

开发努力百分比法

所需的测试工作量与开发工作量成正比或百分比。可以使用代码行数 (LOC) 或功能点 (FP) 来估计开发工作量。然后,从组织数据库中获取测试工作量的百分比。如此获得的百分比用于得出测试的工作量估计。

评估测试项目

一些组织现在正在向其客户提供独立的验证和确认服务,这意味着项目活动将完全是测试活动。

估计测试项目需要软件测试生命周期的各种项目的经验。当您评估测试项目时,请考虑 -

  • 团队技能
  • 领域知识
  • 应用程序的复杂性
  • 历史数据
  • 项目的错误周期
  • 资源可用性
  • 生产力变化
  • 系统环境及停机时间

测试估计技术

以下测试估计技术被证明是准确的并且被广泛使用 -

  • PERT软件测试估算技术
  • UCP法
  • 工作分解结构
  • 宽带德尔菲技术
  • 功能点/测试点分析
  • 百分比分布
  • 基于经验的测试估计技术

PERT软件测试估算技术

PERT软件测试估算技术基于统计方法,其中每个测试任务被分解为子任务,然后对每个子任务进行三种类型的估算。

该技术使用的公式是 -

测试估计 = (O + (4 × M) + E)/6

在哪里,

O = 乐观估计(没有任何问题且所有条件均为最佳的最佳情况)。

M = 最可能的估计(最有可能的持续时间,可能会出现一些问题,但大多数事情都会顺利进行)。

L = 悲观估计(一切都出错的最坏情况)。

该技术的标准偏差计算如下 -

标准差 (SD) = (E − O)/6

用例点法

UCP方法基于用例,我们计算未调整的参与者权重和未调整的用例权重来确定软件测试估计。

用例是指定与相关应用程序交互的不同用户、系统或其他利益相关者的文档。他们被称为“演员”。这些交互通过称为场景的不同Behave或流程来实现一些既定目标,保护所有利益相关者的利益。

步骤 1 - 计算数量。演员。演员包括积极的、消极的和特殊的。

步骤 2 - 计算未调整的演员权重为

未调整的演员权重=总人数 演员数量

步骤 3 - 计算用例的数量。

步骤 4 - 将未调整的用例权重计算为

未调整的用例权重 = 总数 用例数量

步骤 5 - 计算未调整的用例点为

未调整的用例点 =(未调整的参与者权重 + 未调整的用例权重)

步骤 6 - 确定技术/环境因素 (TEF)。若无,则取0.50。

步骤 7 - 计算调整后的用例点为

调整后的用例点 = 未调整的用例点 × [0.65 + (0.01 × TEF]

步骤 8 - 计算总工作量为

总工作量 = 调整后的用例点 × 2

工作分解结构

步骤 1 - 通过将测试项目分解为小块来创建 WBS。

步骤 2 - 将模块划分为子模块。

步骤3将子模块进一步划分为功能。

步骤 4 - 将功能划分为子功能。

步骤 5 - 审查所有测试要求以确保它们已添加到 WBS 中。

步骤 6 - 计算出您的团队需要完成的任务数量。

步骤 7 - 估计每项任务的工作量。

步骤 8 - 估计每项任务的持续时间。

宽带德尔菲技术

在宽带德尔菲法中,WBS被分发给一个由3-7名成员组成的团队来重新估计任务。最终的估算是根据团队共识进行汇总估算的结果。

这种方法更多地讲的是经验而不是任何统计公式。Barry Boehm 推广了这种方法,强调小组迭代以达成共识,团队在评估测试工作量的同时可视化问题的不同方面。

功能点/测试点分析

FP 从用户的角度指示软件应用程序的功能,并用作估计软件项目大小的技术。

在测试中,估计是基于需求规范文档或之前创建的应用程序原型。要计算项目的 FP,需要一些主要组件。他们是 -

  • 未调整的数据功能点- i) 内部文件,ii) 外部接口

  • 未调整的交易功能点- i) 用户输入,ii) 用户输出 & iii) 用户查询

  • Capers Jones 基本公式-

    测试用例数量=(功能点数量)×1.2

  • 实际总努力 (TAE)

    (测试用例数量)×(开发工作百分比/100)

百分比分布

在此技术中,软件开发生命周期 (SDLC) 的所有阶段都以百分比为单位分配工作量。这可以基于类似项目的过去数据。例如 -

阶段 努力的百分比
项目管理 7%
要求 9%
设计 16%
编码 26%
测试(所有测试阶段) 27%
文档 9%
安装和培训 6%

接下来,测试(所有测试阶段)的工作量百分比进一步分配给所有测试阶段 -

所有测试阶段 努力的百分比
元件测试 16
独立测试 84
全部的 100
独立测试 努力的百分比
集成测试 24
系统测试 52
验收测试 24
全部的 100
系统测试 努力的百分比
功能系统测试 65
非功能系统测试 35
全部的 100
测试规划和设计架构 50%
审核阶段 50%

基于经验的测试估计技术

该技术基于类比和专家。该技术假设您已经在以前的项目中测试了类似的应用程序并从这些项目中收集了指标。您还从之前的测试中收集了指标。从非常了解应用程序(以及测试)的主题专家那里获取意见,并使用您收集的指标来完成测试工作。