ancarda / high-test-coverage
类和接口,帮助您提高测试覆盖率
1.1.3
2022-02-26 11:30 UTC
Requires
- php: ^7.3|^8.0
Requires (Dev)
- ancarda/coverage-enforcer: ^1.0
- composer/package-versions-deprecated: 1.11.99.1
- infection/infection: ^0.18.2
- phpstan/phpstan: ^0.12.82
- phpstan/phpstan-phpunit: ^0.12.18
- phpstan/phpstan-strict-rules: ^0.12.9
- phpunit/phpunit: ^9.5
- squizlabs/php_codesniffer: ^3.5
This package is auto-updated.
Last update: 2024-08-26 17:46:45 UTC
README
类和接口,帮助您提高测试覆盖率
High Test Coverage 是一组类和接口,旨在帮助您在使用 PHP 标准库的不纯部分时获得更高的测试覆盖率。它提供了一个 RandomInt
接口,您可以使用它替代 random_int
函数,如下所示
使用 Composer 拉取
composer require --dev ancarda/high-test-coverage
示例用法
<?php use Ancarda\HighTestCoverage\RandomInt\RandomInt; final class Genie { public function __construct(private RandomInt $randomInt) {} public function fortune(): string { return 'Your lucky number is ' . $this->randomInt(1, 10); } }
在生产环境中,此类会提供一个 RandomInt\Real
实例,可能通过您的依赖注入容器来提供。在测试中,您将使用内置的许多类之一,例如 Fixed
或 OneShot
,如下所示
<?php use Ancarda\HighTestCoverage\RandomInt\Fixed; final class GenieTest extends TestCase { public function testFortune(): void { $genie = new Genie(new Fixed(42)); self::assertSame('Your lucky number is 42', $genie->fortune()); } }