如何将屏幕截图与改变预期精度的镜头进行比较?

How to compare screenshots with ashot changing the expected precision?

我将 Ashot 与 Selenium 结合使用来比较网页生成的 canvas 图形与系统中保存的图像。我们已经使用 ashot API 来生成这个保存的图像以供进一步比较,避免将来出现差异。

但在我的团队中,有开发人员使用 Windows,其他开发人员使用 Linux,即使使用相同的浏览器版本,渲染的图形也略有不同(颜色强度、字体渲染)并且由于这些渲染差异(我猜是问题所在),两个图像的比较(使用 ImageDiffer.makeDiff())导致不同 OS 的不同结果。

有什么方法可以忽略那些小差异来比较两张图像吗?我的意思是:改变比较的精度?

罗布森!您可能正在寻找此选项 withDiffSizeTrigger。 当图像仍然被认为是相同的时候,它设置了可区分像素的最大数量。

看看here

举个例子:

ImageDiff diff = new ImageDiffer().makeDiff(expected, actual).withDiffSizeTrigger(__numbers_of_pixels__)