UI覆盖率高级解决方案
识别覆盖率缺口
了解应用程序的测试覆盖率对于确保质量和可靠性至关重要。Cypress的UI覆盖率工具可以洞察应用程序的哪些部分已被测试,并突出显示未测试区域。本指南将帮助您开始使用UI覆盖率工具,有效识别和解决覆盖率缺口。
运行测试
要识别覆盖率缺口,首先需要运行并将Cypress测试记录到云端。如果您是Cypress的新手,请参考Cypress文档开始编写测试。
示例:基于站点地图的自动化测试
如果您的项目缺少现有的Cypress测试,一种常见的方法是通过站点地图或目标URL数组来了解测试覆盖率。这些URL可用于执行轻量级交互并捕获测试中的初始缺口。以下是一个使用站点地图自动化此过程的示例:
describe('UI覆盖率扫描', () => {
it('使用sitemap.xml检查UI覆盖率', () => {
cy.request('https://<YOUR_WEBSITE>/sitemap.xml').then((response) => {
const xmlString = response.body
const parser = new DOMParser()
(loc) => loc.textContent
})
Cypress._.each(URLs, (URL) => {
cy.visit(URL)
})
})
})
查看覆盖率报告
一旦测试记录到Cypress Cloud,您可以分析覆盖率报告以识别缺口。在Cypress Cloud中点击项目中的运行,访问UI覆盖率报告。该报告提供了应用程序测试覆盖率的可视化表示,突出显示已测试和未测试的元素。
总体分数
首先要查看的指标是总体覆盖率分数。该分数通过比较已测试元素数量与应用程序中交互元素的总数计算得出。分数越高表示覆盖率越好,分数越低则表示需要额外测试的区域。该分数将显示在运行页面和单个运行中。

视图
在运行的UI覆盖率选项卡中,您会找到视图部分。视图代表应用程序的不同页面或组件。列表中的每个视图显示URL或组件路径、快照数量、该视图中未测试和已测试的元素数量以及覆盖率分数。

视图详情
点击视图会显示该视图中已测试和未测试元素的详细分类。您可以使用此信息通过浏览器的开发者工具检查元素的DOM快照,并了解任何覆盖率缺口的上下文。视图包括:
- 未测试元素:测试运行期间未交互的交互元素列表。
- 已测试元素:测试运行期间交互过的交互元素列表。
- DOM快照