UI覆盖率高级解决方案
viewFilters
默认情况下,测试运行中访问的每个URL都会包含在报告中。但并非所有URL都与您的分析相关。viewFilters
属性允许您指定需要排除的URL模式,确保报告聚焦于应用程序的关键部分。
在UI覆盖率分析中,排除某个URL会同时从报告中移除该URL下的所有应用快照,并且排除指向该URL的所有链接对覆盖率分数的贡献。
为什么使用视图过滤器?
- 排除第三方URL:如果您的应用集成了第三方服务,可能需要排除其URL
- 排除管理页面:非用户界面的URL(如管理后台)可从报告中移除
- 减少干扰:测试中访问的某些URL(如错误页或重定向页)可能不代表有效用户流程
- 优化性能:过滤无关URL可减少数据处理量,加速分析并提升报告可读性
作用范围
info
**注意:**设置viewFilters
会同时影响无障碍测试和UI覆盖率报告。
如需分别配置,可将该属性嵌套在accessibility
或uiCoverage
键下。
语法
{
"viewFilters": [
{
"pattern": string,
"include": boolean
}
]
}
选项
对于每个访问的URL和发现的链接元素,系统会应用第一个匹配pattern
的viewFilters
规则,根据include
值决定是否包含该URL。未匹配任何规则的URL默认会被包含。
选项 | 必填 | 默认值 | 描述 |
---|---|---|---|
pattern | 是 | 使用URL Pattern API语法匹配URL的字符串 | |
include | 否 | true | 布尔值,决定匹配的URL是否应包含在报告中 |
示例
按主机名排除URL
配置
{
"viewFilters": [
{
"pattern": "https://app.okta.com/*",
"include": false
}
]
}
访问的URL
https://app.okta.com/login
https://cypress.io/home
https://cypress.io/about
界面显示的视图
https://cypress.io/home
https://cypress.io/about
仅包含特定URL
配置
{
"viewFilters": [
{
"pattern": "https://cypress.io/dashboards*",
"include": true
},
{
"pattern": "*",
"include": false
}
]
}
访问的URL
https://cypress.io/dashboards
https://cypress.io/dashboards/1
https://cypress.io/dashboards/2
https://cypress.io/home
https://cypress.io/login
界面显示的视图
https://cypress.io/dashboards
https://cypress.io/dashboards/*
排除错误页面
配置
{
"viewFilters": [
{
"pattern": "http*://*/404",
"include": false
},
{
"pattern": "http*://*/error/*",
"include": false
}
]
}
访问的URL
https://cypress.io/home
https://cypress.io/404
https://cypress.io/error/500
界面显示的视图
https://cypress.io/home