比较不同OS上的图像

时间:2017-03-15 07:11:46

标签: screen-resolution image-comparison

作为自动化的一部分,我想通过截屏和基线图像来比较图像。将在不同的OS(linux,win)上执行相同的操作。在不同的OS中执行时,屏幕分辨率发生变化,图像比较失败。目前我正在使用Selenium + java。任何人都可以建议我采用任何方式或不同的工具来实现它吗?

2 个答案:

答案 0 :(得分:0)

因此,为您正在测试的每个环境制作基线,并将测试与该平台的正确测试进行比较(或者只测试所有这些环境并将其标记为传递,如果它们中的任何一个匹配)。

我不太确定整个"比较屏幕截图"是一种测试事物的好方法(你只是遇到了一个障碍,另一个可能是不同的浏览器(甚至同一浏览器的版本)渲染的东西略有不同。

答案 1 :(得分:0)

这里的关键是分辨率,您必须确保基本图像和测试期间捕获的图像的分辨率相同。

  1. 将浏览器窗口的大小设置为固定大小,例如(1920x1080),
  2. 以该分辨率制作所有屏幕截图,
  3. 在测试过程中:在每次图像比较之前,如果不是,请暂时更改窗口大小是否为(1920x1080),
  4. 截图,
  5. 将图片与原始图片进行比较
  6. 使窗口最大化
  

其他解决方案是捕获单个WebElement的屏幕截图,而不是   而不是整个页面,因为WebElement通常与分辨率无关。