UI覆盖率高级解决方案
视图
UI覆盖率将端到端测试快照中的唯一URL和组件测试中的挂载组件组织为视图。每个视图代表应用程序中的一个独立页面或状态,使您能够跟踪应用程序不同部分的覆盖率。
视图创建机制
默认情况下,UI覆盖率应用一组规则为表示同一页面的动态URL生成单一视图。这些规则通过分组相似URL来确保清晰度并减少干扰:
- 搜索参数:移除所有查询参数(例如
/dashboard?tab=overview
变为/dashboard
) - 哈希参数:移除片段标识符,除非它们表示子路径(例如
#/admin
) - 动态段:仅由整数或UUID不同的URL段会被替换为通配符(
*
)
视图示例
/users/123/profile
和/users/456/profile
合并为/users/*/profile
/dashboard?tab=overview
和/dashboard?tab=settings
合并为/dashboard
/app#settings
和/app#profile
合并为/app
/app#/admin
和/app#/settings
保持为独立视图
这些规则有助于将相似页面整合为可管理的视图,同时在需要时保持特异性。
视图应用
在UI覆盖率界面中,视图列表会显示覆盖率分数,帮助您了解:
- 已测试区域:识别应用程序中哪些部分已有充分测试覆盖
- 未测试区域:发现缺乏测试的页面或组件并确定优先级
- 覆盖率趋势:跟踪各视图覆盖率随时间的变化
- 关键流程:聚焦关键用户旅程的测试工作并确保其完整性
自定义视图
您可以通过配置选项定制URL分组方式:
视图分组
定义URL分组规则以匹配应用程序结构:
{
"views": [
{
"pattern": "https://cypress.io/users/*"
}
]
}
更多配置选项请参阅视图文档。
忽略视图
排除不相关或低优先级的URL不被追踪为视图:
{
"viewFilters": [
{
"pattern": "https://auth.example.com/*",
"include": false
}
]
}
更多配置选项请参阅视图过滤器文档。