如何从为 Azure PaaS 中托管的 Sitecore 站点生成的 Lighthouse Azure DevOps 报告中过滤掉不需要的信息/检查?

How to filter out the unwanted information / checks from Lighthouse Azure DevOps report produced for a Sitecore site hosted in Azure PaaS?

我正在努力提高部署到 Azure PaaS 中的 Sitecore 网站的质量,并使用 Lighthouse 作为 Azure Pipelines 的 Azure DevOps 扩展,以 运行 Lighthouse 报告不时检查分数。

这是默认情况下标准 Lighthouse 报告的样子 - 所有部分的完整信息:

理想情况下,我想 运行 检查内部最相关的类别和个别标准,并只获得我感兴趣的部分和指标的结果。这将帮助我避免信息混乱并大大减少测试持续时间。例如,我的网站目前不符合渐进式 Web 应用程序 (PWA) 的要求,因此,我想从 Lighthouse 报告中完全排除 PWA 类别和检查。此外,将“辅助功能”部分设为可选也会有所帮助,因为我在这方面没有做太多更改。

你能告诉我最好的方法吗?

可以使用 Lighthouse DevOps 任务的 CLI 参数进行过滤,如下所示:

要忽略 PWA 检查,请在 lighthouserc.json 配置文件中使用 "preset": "lighthouse:no-pwa" 预设。我还建议您指定所需的警告基线。例如,要根据 0.70 的基准分数断言性能、可访问性、最佳实践和 SEO 类别,请使用以下配置:

{ 
    "assert": {  
        "preset": "lighthouse:no-pwa",  
        "assertions": {  
            "categories:performance": ["warn", {"aggregationMethod": "optimistic", "minScore": 0.70}],  
            "categories:accessibility": ["warn", {"aggregationMethod": "optimistic", "minScore": 0.70}],  
            "categories:best-practices": ["warn", {"aggregationMethod": "optimistic", "minScore": 0.70}],  
            "categories:seo": ["warn", {"aggregationMethod": "optimistic", "minScore": 0.70}]
        }
    }  
} 

如果需要,可以审计具有特定类别的单个项目,例如,"first-contentful-paint": "off""uses-responsive-images": ["error", {"maxLength": 0}]。有关每个类别中审计 ID 的参考,请参阅默认的 Lighthouse 配置。当没有设置选项时,使用默认选项{"aggregationMethod": "optimistic", "minScore": 1}