文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

自动化视觉回归测试的四种方法

2024-11-30 17:07

关注

在我们开始之前,让我们快速回答一些问题:

视觉回归测试是什么意思?

视觉回归测试是比较两个不同版本之间应用程序 UI 视觉外观的过程,以确保没有意外的视觉变化。该过程涉及截取各种 UI 元素的屏幕截图,并将它们与之前捕获的屏幕截图进行比较,以确定视觉外观的任何变化。视觉回归测试有助于确保应用程序的 UI 在不同的设备、浏览器和操作系统中保持一致和视觉吸引力。

你为什么要自动化它?

自动化视觉回归测试有助于在开发周期的早期识别 UI 问题,这可以节省大量时间和金钱,否则这些时间和金钱可能会花在以后修复问题上。想一想修复 Q/A、UAT 或生产中遇到的 UI 怪癖所花费的时间(以及金钱)。你为什么不自动捕捉那些视觉错误?

手动目视检查怎么样?

尽管您可以执行手动目视检查,但不建议仅依赖它们,因为与使用自动化套件相比,它会花费更多时间。发现 UI 中的差异可能具有挑战性,即使对于细微的视觉错误也是如此。请看下面的例子——你能找出这 8 个不同之处吗?大概。但这比自动化套件花费的时间要长得多。

自动视觉回归测试捕获了多少百分比的视觉错误?

来自各种来源(BrowserStack、AppliTools 等)的研究表明,自动化视觉回归测试可以捕获大多数视觉错误,成功率在 95% 到 99% 之间,具体取决于应用程序的复杂性和所使用的测试过程。

在本文中,我们将探索 4 个流行的自动化视觉回归测试库:Chromatic、Percy、Jest Image Snapshot和BackstopJS。

Chromatic

Chromatic是专门为Storybook设计的视觉回归测试工具。Chromatic 提供了一个云平台,允许用户测试和管理项目的 UI 组件,确保所做的任何更改都不会导致意外的视觉变化。

谁使用 Chromatic?

Adobe、Auth0、CircleCI、GOV.UK、BBC 等。

彩色的优点

彩色的缺点

Percy

Percy是一个一体化的视觉审阅平台,提供广泛的功能和集成。它被BrowserStack收购,后者是应用程序和浏览器测试领域的行业领导者。Percy 帮助开发人员捕捉视觉回归、简化审查流程并允许团队轻松协作和跟踪更改。

谁使用Percy?

谷歌、Sentry、Shopify、Fastly、Basecamp 等。

Percy的优点

Percy的缺点

为 Storybook 选择哪种云解决方案?

在我看来,如果我已经在使用/计划将它用于其他视觉回归测试(例如在 Cypress E2E 测试套件中),我会选择 Percy,以便将您的视觉回归测试整合到一个平台中。另一方面,如果我只需要为 Storybook 执行视觉回归测试,我会选择 Chromatic。Chromatic 由其维护者专门为其 Storybook 设计,使其更具兼容性和面向未来。由于 Chromatic 专门针对 Storybook 进行了优化,因此它可以更好地与平台集成并提供更简化的工作流程。

@percy/storybookvs.的 NPM 趋势chromatic似乎表明大多数人都得出了相同的结论:

Jest Image Snapshot

Jest Image Snapshot是为 Jest 构建的视觉回归测试工具。它允许开发人员拍摄渲染组件或元素的快照,并将它们与之前存储的图像进行比较,以检查是否存在任何视觉差异或变化。它通过渲染组件或元素并使用无头浏览器生成渲染输出的图像来工作。然后使用像素到像素比较将生成的图像与先前存储的图像进行比较,如果发现任何差异,Jest 将报告测试失败。

谁使用 Jest Image Snapshot?

美国运通等

Jest Image Snapshot的优点

Jest Image Snapshot 的缺点

BackstopJS

BackstopJS是一种用于 Web 应用程序的开源视觉回归测试工具,可自动将 Web 应用程序当前状态的屏幕截图与其先前版本进行比较,以识别任何视觉变化。它使用无头浏览器自动化来模拟用户交互并捕获网页的屏幕截图。BackstopJS 可以配置为跨多个视口测试多个页面和响应式设计。它还支持用户身份验证,可以与各种 CI/CD 管道集成。BackstopJS 使用配置文件来定义要测试的 URL、视口和其他设置。

BackstopJS 的优点

BackstopJS 的缺点

总之,每种工具都具有独特的功能和优点,以及潜在的缺点。选择哪个用于视觉回归测试取决于各种因素,例如项目要求、团队偏好和可用资源。在选择每种工具时都需要权衡取舍,决定取决于哪些因素对您的项目最重要。

在我看来,Percy提供了最全面和用户友好的解决方案,使其成为寻求高级工具的团队的绝佳选择。Chromatic 是只需要测试 Storybook 库的团队的合适选择,而BackstopJS更适合寻求更全面测试功能的团队。Jest Image Snapshot 对于使用 Jest 从事较小项目的开发人员来说是一个不错的选择。

最终,将自动化视觉回归测试纳入您的开发过程对于及早发现 UI 缺陷并确保为您的网站或应用程序提供高质量的用户体验至关重要。

来源:今日头条内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯