软件测试指标、其类型和示例
软件测试指标是软件测试过程进度、质量、生产力和整体健康状况的可量化指标。软件测试指标的目的是提高软件测试过程的效率和有效性,同时通过提供有关测试过程的准确数据来帮助为未来的测试做出更好的决策。度量以数字形式表示系统、系统组件或过程具有特定属性的程度。与制造商指定的理想里程相比,汽车的每周行驶里程是衡量指标的绝佳例证。在这里,我们讨论以下几点:
- 度量在软件测试中的重要性。
- 软件测试指标的类型。
- 手动测试指标:它们是什么以及它们如何工作?
- 其他重要指标。
- 测试指标生命周期。
- 测试指标的公式。
- 软件测试指标计算示例。
度量在软件测试中的重要性
测试指标对于确定软件的质量和性能至关重要。开发人员可以使用正确的软件测试指标来提高他们的生产力。
- 测试指标有助于确定需要哪些类型的增强来创建无缺陷的高质量软件产品。
- 对随后的测试阶段做出明智的判断,例如项目进度和成本估算。
- 检查当前的技术或程序,看看它是否需要更多的改变。
软件测试指标的类型
软件测试指标分为三类:
- 过程度量:项目的特征和执行由过程度量定义。这些特性对于 SDLC 流程的改进和维护(软件开发生命周期)至关重要。
- 产品指标:产品的尺寸、设计、性能、质量和复杂性由产品指标定义。开发人员可以通过利用这些功能来提高他们的软件开发质量。
- 项目指标:项目指标用于评估项目的整体质量。它用于估计项目的资源和可交付成果,以及确定成本、生产力和缺陷。
为流程确定适当的测试指标至关重要。需要记住的几点:
- 在创建指标之前,请仔细选择您的目标受众。
- 定义创建指标的目标。
- 根据项目的具体要求准备测量。评估与每个统计数据相关的财务收益。
- 将测量结果与项目生活方式阶段相匹配,以获得最佳结果。
自动化测试的主要好处是它允许测试人员在更短的时间内完成更多的测试,同时还涵盖了实际上难以手动计算的大量变化。
手动测试指标:它们是什么以及它们如何工作?
手动测试由质量保证专家逐步进行。测试自动化框架、工具和软件用于在自动化测试中执行测试。人工和自动化测试各有利弊。手动测试是一项耗时的技术,但它允许测试人员处理更复杂的情况。有两种手动测试指标:
1. 基本指标:分析师在整个测试用例的开发和执行过程中收集数据,以提供基本指标。通过生成项目状态报告,这些指标被发送给测试主管和项目经理。它使用计算的指标进行量化。
- 测试用例总数
- 完成的测试用例总数。
2. 计算指标:来自基本指标的数据用于创建计算指标。测试负责人收集这些信息并将其转换为更有用的信息,以便在模块、测试人员和其他级别跟踪项目进度。这是 SDLC 的一个重要方面,因为它允许开发人员进行关键的软件更改。
其他重要指标
以下是其他一些重要的软件指标:
- 缺陷度量:缺陷度量帮助工程师了解软件质量的许多方面,例如功能、性能、安装稳定性、可用性、兼容性等。
- 计划遵守:计划遵守的主要目的是确定计划的预期执行时间和实际执行时间之间的时间差。
- 缺陷严重性:问题的严重性使开发人员可以看到缺陷将如何影响软件的质量。
- 测试用例效率:测试用例效率衡量测试用例在检测问题方面的有效性。
- 缺陷发现率:用于确定一段时间内缺陷的模式。
- 缺陷修复时间:修复问题所需的时间称为缺陷修复时间。
- 测试覆盖率:它指定分配给程序的测试用例的数量。该指标可确保测试完全完成。它还有助于验证代码流和测试功能。
- 缺陷原因:它用于找出导致问题的原因。
测试指标生命周期
下图说明了测试指标生命周期中的不同阶段。
测试指标生命周期的各个阶段是:
- 分析:
- 必须识别度量标准。
- 定义已确定的 QA 指标。
- 交流:
- 利益相关者和测试团队应该被告知对度量的要求。
- 就必须收集的数据点对测试团队进行教育,以便处理指标。
- 评估:
- 应捕获和验证数据。
- 使用收集的数据来计算指标的价值
- 报告:
- 为论文创建一个强有力的结论。
- 将报告分发给适当的利益相关者和代表。
- 收集利益相关者代表的意见。
测试指标公式
要获取测试用例的百分比执行状态,可以使用以下公式:
Percentage test cases executed = (No of test cases executed / Total no of test cases written) x 100
类似地,也可以计算其他参数,例如未执行的测试用例、通过的测试用例、失败的测试用例、被阻止的测试用例等。下面是一些公式:
1. 测试用例有效性:
Test Case Effectiveness = (Number of defects detected / Number of test cases run) x 100
2. 通过的测试用例百分比:通过的测试用例覆盖率是一个指标,表示通过的测试用例的百分比。
Passed Test Cases Percentage = (Total number of tests ran / Total number of tests executed) x 100
3. 失败的测试用例百分比:该指标衡量所有失败的测试用例的比例。
Failed Test Cases Percentage = (Total number of failed test cases / Total number of tests executed) x 100
4. Blocked Test Cases Percentage:在软件测试过程中,这个参数决定了测试用例被阻塞的百分比。
Blocked Test Cases Percentage = (Total number of blocked tests / Total number of tests executed) x 100
5. 已修复缺陷百分比:使用此度量,团队可以确定已修复缺陷的百分比。
Fixed Defects Percentage = (Total number of flaws fixed / Number of defects reported) x 100
6. 返工努力率:这个指标有助于确定返工努力率。
Rework Effort Ratio = (Actual rework efforts spent in that phase/ Total actual efforts spent in that phase) x 100
7. 接受的缺陷百分比:这衡量的是接受的缺陷占接受的缺陷总数的百分比。
Accepted Defects Percentage = (Defects Accepted as Valid by Dev Team / Total Defects Reported) x 100
8. 延迟的缺陷百分比:衡量延迟以供将来发布的缺陷的百分比。
Defects Deferred Percentage = (Defects deferred for future releases / Total Defects Reported) x 100
软件测试指标计算示例
让我们举个例子来计算测试指标:S No. Testing Metric Data retrieved during test case development 1 No. of requirements 5 2 The average number of test cases written per requirement 40 3 Total no. of Test cases written for all requirements 200 4 Total no. of Test cases executed 164 5 No. of Test cases passed 100 6 No. of Test cases failed 60 7 No. of Test cases blocked 4 8 No. of Test cases unexecuted 36 9 Total no. of defects identified 20 10 Defects accepted as valid by the dev team 15 11 Defects deferred for future releases 5 12 Defects fixed 12
1. Percentage test cases executed = (No of test cases executed / Total no of test cases written) x 100
= (164 / 200) x 100
= 82
2. Test Case Effectiveness = (Number of defects detected / Number of test cases run) x 100
= (20 / 164) x 100
= 12.2
3. Failed Test Cases Percentage = (Total number of failed test cases / Total number of tests executed) x 100
= (60 / 164) * 100
= 36.59
4. Blocked Test Cases Percentage = (Total number of blocked tests / Total number of tests executed) x 100
= (4 / 164) * 100
= 2.44
5. Fixed Defects Percentage = (Total number of flaws fixed / Number of defects reported) x 100
= (12 / 20) * 100
= 60
6. Accepted Defects Percentage = (Defects Accepted as Valid by Dev Team / Total Defects Reported) x 100
= (15 / 20) * 100
= 75
7. Defects Deferred Percentage = (Defects deferred for future releases / Total Defects Reported) x 100
= (5 / 20) * 100
= 25