比较渲染网页的屏幕截图

软件测试 自动化测试 功能性的 基于图像的测试
2022-02-07 23:25:19

在我的团队中,我们使用 Selenium 来自动化功能测试。我们还进行了大量手动回归测试,以确保呈现的网页外观正常。我想开发一个框架,允许在应用软件更新后比较“基本”实时网页的屏幕截图和测试服务器上的网页。我相信这将大大减少我们需要做的手动回归测试的数量。

我希望该框架能够检测到呈现方式彼此不同的网页部分。可以在此处查看此类功能的示例。(文章中的第一张图片)

我从来没有使用过图像处理,并且需要关于哪些算法已经公开可用以帮助我完成任务的想法。据我所知,简单的逐像素比较不会很好用,因为它没有考虑元素的概念。

还是我从一个完全错误的方向来解决这个问题?

4个回答

我会看看 Google QualityBots。它通常用于比较多个版本的 Chrome 上的网站,但看起来与您尝试做的非常相似。我个人没有时间亲自尝试,主要是因为它使用了 EC2 机器。除此之外,它是开源的。

Imagemagick是一个跨平台的图像库和命令行工具,具有可用于比较图像的功能。我在 2012 年左右工作的一个团队使用它非常成功地确定了两个图像是否不同。我们使用相同的库构建了一个 GUI,它可以并排拉出两个图像并突出显示差异,以供人类判断差异是否显着。

我不确定这是否是您要找的东西,但是,您检查过 sikuli吗?我自己从来没有使用过它,但是,我已经看到它在这里推荐了几次用于相同类型的测试。

这是一个工具,可以对您网站的不同版本dpxdt进行视觉比较。这是一个视频,解释了该工具的工作原理以及如何使用它:安全持续部署的秘密

最后,这里是如何使用 Selenium 实现它的指南。