了解最新技术文章
测试覆盖率和可追溯性是测试时要跟踪的两个最重要的指标。这篇文章将介绍为什么测试覆盖率和可追溯性在 Jira 中至关重要,以及如何在 Jira 中显示测试覆盖率、管理需求可追溯性以及创建可追溯性报告。
需求可追溯性是一种衡量测试覆盖率的方法,通常是指在开发生命周期的不同阶段(即需求收集、设计、开发、测试和维护)跟踪业务需求。
可追溯性对于缓解风险至关重要,因为它允许您识别有问题的项目、了解导致该问题的更改并确定如何解决该问题。正如 Convercent 的案例研究所示,完整的可追溯性对于合规性和风险缓解工作至关重要。
在 Jira 中,可追溯性意味着能够跟踪每个用户故事、需求或测试问题以及任何由此产生的缺陷。您应该能够查看各个需求的链接测试用例和结果,并生成完整的可追溯性报告,立即显示您的 Jira 问题及其所有链接的测试工件。
测试覆盖率是一种 QA 指标,用于衡量测试覆盖了正在测试的产品或应用程序的多少。测试覆盖率还有助于确保您已准备、设计和计划测试以覆盖应用程序的每个部分。
在 Jira 中,测试覆盖率帮助我们确定我们在 Jira 中编写为用户故事、史诗或问题的每个功能或产品需求的运行、通过、失败、阻止等测试的数量。通常,您可以通过将用户故事与其关联的测试用例链接起来来跟踪 Jira 测试覆盖率,反之亦然。测试覆盖率对于确保所有功能都经过测试至关重要。
这个想法是为了了解为其编写测试用例的需求的百分比。百分比越高,我们就越有信心我们的测试活动将发现应用程序中的任何潜在风险。
通过在整个软件开发生命周期 (SDLC) 中跟踪测试覆盖率状态,您可以识别覆盖率不足的区域,并采取措施避免质量下降。这也有助于确保避免生产中出现缺陷。如果应用程序中存在缺陷,它们将在测试阶段而不是产品已经上线时被发现。这提供了开发项目当前健康状况的简要概述。
测试覆盖率衡量测试覆盖了正在测试的产品的多少。通常,只有当某个需求有相应的测试用例并分配给它的测试工程师时,该需求才被视为“涵盖”。
可追溯性是指各种需求级别、风险分析、设计和验证之间建立的联系。可追溯性矩阵用于将测试用例映射到需求。它充当一个清单,其中列出了所有需求,并且针对每个需求列出了涵盖相应需求的测试用例。
但你为什么要担心呢?以下是在 Jira 中跟踪测试覆盖率和维护可追溯性很重要的七个主要原因:
向后和向前的可追溯性可确保测试用例满足您的需求。
可追溯性帮助团队识别需求和其他工件之间的关键依赖关系。
它还有助于确定覆盖范围内的差距,以便采取适当的行动来解决这些问题。
团队可以轻松识别相关任务并估计进行更改所需的工作。
可追溯性报告使您能够快速识别受影响的工件、评估变更的影响,并在项目需求发生变化时采取适当的措施。
维护可追溯性是一个重要的工具,可以帮助审核员轻松审查需求和受影响的工件。
可追溯性确保可以以最小的成本和精力及早发现并修复不一致的情况。
可追溯性帮助测试经理验证测试是否涵盖了需求,从而使测试管理更加有效。
它还减少了由于差异而维护不良的测试库的数量。
通过可追溯性,QA 领导可以预测并主动处理需求的变化,并确保这些变化应用于相关的测试用例。
它有助于评估系统的哪些部分已经过测试以及哪些部分需要额外测试。
它还有助于将缺陷跟踪回原始需求并提取缺陷级别的指标(即缺陷泄漏、缺陷率和其他指标)。
它允许您尽早识别 SDLC 中的需求、缺陷和测试用例中的差距。
全面的测试覆盖率可以创建更多的测试用例,从而减少缺陷、减少后期阶段的工作量以及更好的覆盖率。
它还有助于识别和消除重复的测试用例。
良好的测试覆盖率可确保生产中更少的缺陷。
它可以提高发布质量和整体客户满意度。
全面的测试覆盖率确保没有未经测试的需求,并增强您对测试活动的信心。
良好的测试覆盖率可以突出显示一组测试用例未覆盖的区域,从而帮助您的流程更加可靠且不易出错。
它允许您通过评估测试覆盖率来确定单元测试或测试套件覆盖了软件的多少部分。
它有助于确定您是否缺乏对任何代码或功能的测试。
它有助于测试用例优先级和回归测试。
良好的测试覆盖率还可以帮助您更早地识别缺陷、更快地解决缺陷并牢牢掌握项目范围,从而节省时间。
要创建测试覆盖率或可追溯性报告,您首先需要有需求或用户故事以及测试工件,例如测试用例、测试和缺陷。
许多使用 Jira 的团队尝试将测试用例编写为问题中的子任务或创建自定义问题类型进行测试。然而,Jira 并不是为测试管理而设计的,并且不附带任何类型的内置测试覆盖率或可追溯性报告。在这篇博文中,我们将使用 TestRail(与 Jira 集成的专用测试管理工具)根据 Jira 中跟踪的用户故事创建测试覆盖率和可追溯性报告。
大多数在 Jira 中跟踪需求或开发任务的团队都会处理史诗或用户故事等问题类型。您的团队可能会编写最终产品应具有的功能或能力的详细描述,或者它们可能被定义为从最终用户的角度编写的软件功能的非正式的一般解释。
创建测试覆盖率或可追溯性报告的第一步是确定哪些用户故事已被优先用于下一个冲刺或发布并需要进行测试。
在为每个需求编写测试用例时,有以下几种选择:
1. 将测试用例编写为 Jira 中某个问题的子任务
2. 创建自定义测试问题类型或使用 Jira 插件
3.使用专用的测试用例管理工具
最终,如果您尝试报告测试覆盖率或可追溯性,最快的方法是使用具有内置覆盖率和可追溯性报告的测试管理工具。
当您编写测试用例时,请确保链接来自外部工具的任何需求。例如,在 TestRail 中,您可以将用户故事或需求的 Jira 问题 ID 复制/粘贴到测试用例或测试结果工件的“引用”字段中,以指示测试是相关的并提供两个平台之间的双向可见性。
如果您将测试用例编写为 Jira 问题或子任务,则创建测试覆盖率报告将是一项手动工作。在这种情况下,创建覆盖率报告的最快方法很可能是将用户故事的问题 ID 复制到电子表格中,然后创建第二列来记下您创建的每个测试用例问题的 ID并逐期链接到每个用户故事。您可以使用电子表格函数来计算有多少个用户故事 ID 也有测试用例问题 ID,有多少个没有,并根据需要创建一个图表。
有关在 TestRail 中快速创建覆盖率报告的详细步骤,请查看TestRail 的测试覆盖率报告文档或观看此视频如何使用 Jira 设置测试覆盖率。
创建足够的测试用例以充分覆盖整个应用程序后,您就可以开始运行测试。
当您运行测试时,将您发现的任何缺陷链接起来以确保完全可追溯性非常重要。在 TestRail 中,当您在运行或计划中添加测试结果时,您可以使用缺陷字段链接来自 Jira 的缺陷或错误报告,甚至可以通过从 TestRail 推送缺陷来自动在 Jira 中创建新问题。
最后,一旦您记录了一些测试结果或尝试检查版本是否已准备好部署,您就可以生成可跟踪性报告。
如果您手动创建可追溯性报告,您很可能希望通过 Excel 电子表格或 Google Sheets 来使用需求可追溯性矩阵 (RTM)。需求可追溯性矩阵可以显示以下内容:
用户需要完成的用户验收测试以及用户验收测试状态
特定测试用例的执行状态
特定测试用例的设计状态
测试用例数量的需求覆盖率
相关缺陷
目前的测试状态
以下是创建基本需求可追溯性矩阵的步骤。步骤如下:
1. 定义你的目标
示例:“我想创建一个可追溯性矩阵,以了解如果需求发生变化,哪些测试和问题会受到影响。”
2. 收集所有工件(即需求、测试用例、测试结果、问题等)
3. 通过为每个工件添加一列来创建 RTM 模板
4. 从需求文档添加需求
添加需求描述和 ID
5. 从测试用例文档添加测试用例
添加与上一步中提到的要求相对应的测试用例
6. 如果适用,添加测试结果和问题
添加与上一步中提到的测试用例相对应的测试结果
7. 需要时更新矩阵
每当任何工件发生变化时更新矩阵以反映项目当前的运行状况。
以下是 Google 或 Excel 电子表格中的可追溯性矩阵的示例(注意:对于各种项目迭代,通常会有更多列)。
要在 TestRail 中自动生成需求可追溯性报告,首先打开一个用户故事,然后单击 TestRail 案例字段以自动打开一个新面板,其中包含该特定用户故事的当前测试用例。
开始从 Jira 添加测试用例
在 Jira 中,单击按钮添加测试用例,然后选择要在其中创建测试用例的项目。从这里,您将被重定向到 TestRail 测试用例创建页面,其中参考字段中已存在用户故事问题 ID 。
直接在 TestRail 中编辑 Jira 用户故事
接下来,您必须命名第一个案例。对于此示例,我们将第一个测试命名为“成功登录”,并通过单击“添加测试用例”立即保存它。
该参考现在显示为链接,您可以将鼠标悬停在该链接上并进行编辑。通过单击参考,您将被重定向到 Jira,您可以在其中打开 TestRail 案例面板,并立即看到您的测试案例现在通过 TestRail 上的参考覆盖了用户故事。另外,如果单击测试用例链接,您将导航到 TestRail 中的测试用例详细信息。
注意:在 TestRail 上配置 Jira 集成时可以自定义显示的字段。
快速添加对多个测试用例的引用
现在您可以打开测试用例列表页面并在那里查看您的测试用例。在此页面上,您可以快速概述测试场景并批量添加用户故事参考。
在此示例中,为了添加几个测试用例来涵盖我们的登录用户故事,我们选择“无法使用无效电子邮件登录”、“无法使用无效密码登录”和“无法在没有凭据的情况下登录”。在本例中,我们还没有任何关联的引用,但我们可以选择所有测试用例来快速批量添加引用。为此,只需选择案例,单击“编辑”,然后单击“编辑所选”。
最后,检查引用字段,将引用添加到您的登录用户故事中,然后保存更改。您现在已经在这些测试和我们的用户故事之间创建了可追溯性。
如果您的团队使用 Jira 来管理软件开发,那么测试覆盖率和可追溯性是需要报告和跟踪的两个最重要的指标。可追溯性有助于确保可见性、管理持续变更、简化审核流程并使测试管理整体更加有效。此外,测试覆盖率可以节省您的时间,提高投资回报率,并促进更顺畅的测试周期。可追溯性和测试覆盖率相结合有助于最大限度地降低风险并确保您的 QA 测试过程全面且安全。