此包已被 弃用,不再维护。未建议替代包。

高度意见化的PHPUnit良好实践执行器。

v1.9.2 2022-08-29 18:04 UTC

README

由于PHPUnit本身和支撑它的静态代码分析器良好,此包不再需要。

PHPUnit良好实践

高度意见化的PHPUnit良好实践执行器。

可用特性

ExpectationViaCodeOverAnnotationTrait

期望异常应通过代码设置,而不是注释。

ExpectOverSetExceptionTrait

期望应直接通过setter设置。

IdentityOverEqualityTrait

应使用身份断言(===)而非相等断言(==)。

ProphecyOverMockObjectTrait

应使用Prophecy而非Mock对象。

ProphesizeOnlyInterfaceTrait

仅对(现有)接口创建Prophecy。

示例用法

<?php

namespace FooProject\Tests;

use PHPUnit\Framework\TestCase;
use PHPUnitGoodPractices\Traits\ExpectationViaCodeOverAnnotationTrait;
use PHPUnitGoodPractices\Traits\ExpectOverSetExceptionTrait;
use PHPUnitGoodPractices\Traits\IdentityOverEqualityTrait;
use PHPUnitGoodPractices\Traits\ProphecyOverMockObjectTrait;
use PHPUnitGoodPractices\Traits\ProphesizeOnlyInterfaceTrait;

final class FooTest extends TestCase
{
    use ExpectationViaCodeOverAnnotationTrait;
    use ExpectOverSetExceptionTrait;
    use IdentityOverEqualityTrait;
    use ProphecyOverMockObjectTrait;
    use ProphesizeOnlyInterfaceTrait;

    public function testBar()
    {
        $this->assertEquals(123, 213); // will report non-strict assertion usage
    }
}