lupka/phpunit-compare-images

用于比较图像相似性的PHPUnit断言。

1.0.0 2016-11-01 07:37 UTC

This package is auto-updated.

Last update: 2024-08-25 19:30:50 UTC


README

用于评估图像相似性的PHPUnit断言。

重要:根据您的设置,比较不同尺寸的图像可能会遇到问题。我无法确定具体问题是什么,但在本地的OSX上,比较不同尺寸的图像运行良好,但如果我在Travis CI中使用不同尺寸的图像,测试就会失败。

Travis Packagist [icense](LICENSE)

安装

composer require lupka/phpunit-compare-images

使用方法

CompareImagesTrait特性添加到您的测试类中,以启用断言的使用。

<?php
use Lupka\PHPUnitCompareImages\CompareImagesTrait;

class YourTestCase extends PHPUnit_Framework_TestCase
{
    use CompareImagesTrait;

    ...
}

断言

此包包含多个断言。

每个断言的前两个参数是要比较的图像,可以是Imagick对象或字符串文件路径。

assertImageSimilarity

assertImageSimilarity($image1, $image2, $threshold = 0)

如果两个图像不在给定的相似度阈值内,将失败。

assertImageDifference

assertImageDifference($image1, $image2, $threshold = 0)

如果两个图像在给定的相似度阈值内,将失败。

assertImagesSame

assertImagesSame($image1, $image2)

如果两个图像不是完全相同的,将失败。

assertImagesDifferent

assertImagesDifferent($image1, $image2)

如果两个图像完全相同,将失败。

$threshold代表什么?

在assertImageSimilarity和assertImageDifference函数中的$threshold值直接与PHP的Imagick类的compareImages函数的结果进行比较。以下是不同比较所需的阈值的一些示例。

阈值:0

图像完全相同。

阈值:0.234

不同的图像。

阈值:0.033

相同图像的略微裁剪版本。

阈值:1

黑色与白色

备注/链接