软件测试行业中的关键性能指标(KPI)是用来衡量整个软件测试过程中效率与效果的一些可测量数值。尽管使用软件测试KPI来衡量效率似乎理所当然,但在软件测试行业中,测试界人士之间在是否使用KPI的问题上存在分歧。有些人认为软件测试KPI无益于帮助实现时间、成本和质量之间的平衡,而另一些人则对其有效性深信不疑。不同的组织有不同的产品,因此开发方法和测试流程也各不相同。
因此,QA个人或经理需要做的是:
- 了解流程。
- 审查可衡量的KPI。
- 根据您的项目,找出应衡量的质量KPI,以获得最大效益。
软件测试中的KPI是什么?
衡量所有这些KPI并没有硬性规定,您也可以提出清单中没有提到的KPI。在软件测试行业最常见的 KPI 指标有:
- 活动缺陷
所有尚未关闭的缺陷都称为活动缺陷。它可能包含新的开放缺陷或已修复但未验证的缺陷。测试经理需要确定一个阈值,超过这个阈值就必须立即采取行动,降低功能缺陷的数量。一般来说,功能缺陷数量越少,产品质量就越好。 - 编写测试
这一KPI衡量的是在规定时间间隔内设计的测试用例数量。这也有助于根据需求衡量测试用例,同时可以进一步评估所设计的测试用例,以便将其纳入回归或特别测试套件中。 - 自动化测试
这一KPI衡量的是自动化测试用例占测试用例总数的百分比。通常,百分比越高,就越有可能在自动化运行过程中发现故障。自动化百分比的阈值应根据产品类型和自动化成本来决定。 - 覆盖需求
该KPI用于衡量测试用例与需求之间的映射关系。测试经理需要确保所有需求都有相应的测试用例,并对无法映射到任何测试用例的需求采取行动,反之亦然。目标是将需求与测试用例的映射保持在 100%。 - 代码覆盖率
测试人员使用这一KPI来确定他们的自动化测试覆盖代码的百分比。 - 每日修复的缺陷
该指标用于衡量开发的有效性,但具有主观性,因为有些缺陷的修复可能比其他缺陷更具挑战性。这可用于预测测试团队的工作量。 - 通过的需求
这一KPI在计划发布产品时生效。如果任何需求尚未通过测试,则应推迟发布。 - 通过的测试
为了解测试用例设计流程的有效性,要衡量通过设计的测试用例报告的缺陷数量,测试用例通过意味着设计切实可行,反之亦然。 - 被拒绝的缺陷
这一KPI衡量的是被拒绝的缺陷占报告缺陷总数的百分比。如果百分比高于设定的阈值,则必须找出根本问题并采取相应措施。这可能意味着要对软件测试人员进行更多培训,或改进需求文档。 - 已审核需求
这一KPI是为了确保测试和开发团队正在处理的任何需求都已通过主题专家的审核,并且可以使用。已审核的需求可能会导致准确的开发和测试,从长远来看代价高昂。 - 严重缺陷
这一KPI旨在将应用程序中的严重缺陷数量控制在一定范围内,如果出现更多严重缺陷,则需要立即采取行动。但在使用前,需要对测试团队进行适当培训,以正确识别严重缺陷。 - 执行的测试实例
此KPI用于衡量测试在任何时间点的执行速度,以确保测试周期按计划进行,并能顺利发布。 - 执行的测试
此 KPI 衡量在任何给定时间内对构建执行的测试用例总数,包括人工测试和自动化测试。 - 时间安排和限制
该 KPI 用于衡量测试执行的平均时间。这有助于在发布计划期间或向项目经理提交开发和测试计划时提供测试时间估算。 - 缺陷关闭率
该 KPI 衡量测试人员验证和关闭已修复缺陷的效率;这也有助于更好地估算发布周期。
软件测试 KPI 在什么情况下具有价值?
- 当您已经在同一软件测试流程已经实施了一段时间。
当您成功实施了一个测试流程并执行了几次之后,现在正是衡量 KPI 的好时机,以了解您的测试流程在哪些方面需要改进。 - 当您拥有一支庞大的测试团队。
拥有一个庞大的测试团队也意味着测试任务的广泛分配。因此,为了确保任务的有效分配和高效执行,衡量一些测试KPI将证明是有益的,也将有助于让每个人都步入正轨。 - 当您正在考虑引入新的测试流程。
如果您正在改造测试流程,那么在原有流程的基础上衡量一些KPI会很有帮助。这将帮助您决定新测试流程要实现的目标。对于希望衡量KPI的企业来说,了解现有测试流程,然后衡量能带来必要改进的KPI是至关重要的。了解您正在寻找的附加值是非常重要的,因为这些 KPI 如果使用不当,很容易将您引向错误的方向。
软件测试 KPI 在什么情况下不具有价值?
虽然衡量流程的有效性对于了解自己是否做得正确至关重要,但在以下情况下,通过质量KPI来衡量测试流程是没有意义的:
- 如果您的产品刚开始进行测试:如果您的产品即将首次发布,而且测试刚刚开始,这就没有什么可衡量的了。这段时间是至关重要的对于对于制定测试流程,而不是衡量测试流程的有效性。
- 如果你不计划有一个较长时间的测试周期:如果你正在做的产品在推出后很长时间内都不会改变,这个测试就将会是一个一次性的过程,那么衡量过程的有效性将不会有任何好处,因为你没有任何新的测试周期可以进行改进。
- 如果您的预算有限:就像做任何活动一样,衡量测试 KPI 也需要时间和精力,因此也需要成本。因此,在测试预算有限的情况下,首要关注点不应是衡量 KPI,而是应用一个具有成本效益的测试流程。
确保做到以上几点,您也就优化了持续交付测试。如果您的组织计划转向测试自动化,但又担心实施过程中的学习曲线和时间限制,那么请关注能让您在与人工创建测试用例同样短的时间内实现测试用例自动化的工具。这将有助于改善质量的多个KPI,如自动化测试、覆盖需求、通过需求、通过测试等。Testsigma 就是这样一款工具,它因其易用性和可忽略不计的学习曲线而迅速得到认可!
常见问题
如何衡量QA的成功?
可以使用KPI来衡量质量保证的成功与否,这将有助于了解测试绩效。以下是kpi中提到的一些关键点。
- 软件中功能缺陷的数量。
- 在规定时间内编写的测试数量。
- 测试中出现的自动化用例数量。
- 测试用例涵盖了多少代码?
- 每天有多少缺陷被修复?
什么是软件测试关键绩效指标(KPIs)?
软件测试中的关键绩效指标(KPIs)是有助于衡量测试绩效和效果的计算数据。通过它,您可以了解到软件测试是否朝着正确的方向发展,是否能按时完成。
软件测试指标与KPI有何区别?
软件测试指标是用于跟踪和监控测试人员执行的各种操作的数据。而组织和测试人员则使用关键绩效指标(KPI)来确定测试效果以及完成测试所需的时间和成本。
什么是QA部门的 KPI?
QA部门的 KPI 计算方法如下 特定时间段内的测试次数 = 测试运行次数/总时间。在初始测试之后,这些时间段应该会缩短并最终稳定在一个基本水平上。QA团队通过研究哪些测试可以同时或自动执行来提高这些数据。