java - 使用 Java 和 ImageMagick 比较两个图像时出现问题

标签 java selenium selenium-webdriver selenium-chromedriver image-comparison

我有一个简单的解决方案来比较两个图像(Chrome 浏览器的两个屏幕截图)。为了获取图像,我使用 Ahoot 库。为了比较两个图像,我使用 ImageMagic 工具。

public Screenshot takeScreenshot() {
        Screenshot elementScreenShot = new AShot()
                .shootingStrategy(ShootingStrategies.viewportPasting(100))
                .takeScreenshot(DriverManager.getWebDriver());

        return elementScreenShot;
    }

我使用 ImageMagic 将基本图像与新图像进行比较 - 实际图像。 但我经常遇到错误。一切都很好,但问题出在田野的角落。

示例: 实际:

enter image description here

预期:

enter image description here

结果(ImageMagic 比较结果):

enter image description here

如您所见,问题在于场角的像素很少。我尝试了很多技巧,但什么也没发生。

最佳答案

我发现问题仅发生在 Chrome 浏览器上。在 Mozilla 上一切正常。看来我们的应用程序在 Chrome 浏览器中渲染时出现了问题。对于同一地点的 10 次执行,7/10 的场角存在差异。

关于java - 使用 Java 和 ImageMagick 比较两个图像时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61138977/

相关文章:

Java for 循环执行了两次

java - 销毁时获取 Bean

ant - 如何通过 CI 运行/执行 Selenium 测试(例如 Jenkins)

python - 类型错误 : 'module' object is not callable error with driver=webdriver ("C:\\Python34\\Lib\\site-packages\\selenium\\webdriver\\chromedriver.exe")

google-chrome - 在没有显示的Linux服务器上运行Chrome WebDriver

java - 默认值取决于列类型 mysql

java - HTML : Form does not send UTF-8 format inputs

javascript - 为 selenium webdriver 设置特定功能

ruby-on-rails - 使用 RSPEC 进行测试时突然莫名其妙的事件记录连接超时

java - 如何编写带有条件的 xpath 以获得满足我要求的所需网络元素列表