使用Selenium Ruby Webdriver比较两个图像

时间:2013-05-30 16:29:01

标签: ruby selenium webdriver

请帮助我一个解决方案来比较Web应用程序的两个URL中的两个图像是否相同(我的意思是每个图像中的内容是相同的)或不使用Selenium Ruby Webdriver。

例如:我在访问以下网址时显示了一个小图片:

 http://testing.com/image1.png

访问以下网址时,我还有另一张图片:

 http://testing.com/image2.png

如何使用Selenium Ruby Webdriver比较这两个图像以确定它们是否相同?任何建议表示赞赏。非常感谢。

1 个答案:

答案 0 :(得分:6)

rmagick可用于使用compare_channel方法比较相同像素的两个图像:

img1 =  Magick::Image.read('image1.png')
img2 =  Magick::Image.read('image2.png')

diff_img, diff_metric  = img1[0].compare_channel( img2[0], Magick::MeanSquaredErrorMetric )

# diff_img is a cool feature - an image showing which pixels are different

# diff_metric == 0.0 for "no difference"

有关详细信息,请参阅http://studio.imagemagick.org/RMagick/doc/image1.html#compare_channel