josiasmontag / laravel-redis-mock
此Laravel扩展包为您的测试提供Redis模拟
1.3.3
2024-03-04 08:27 UTC
Requires
- php: >=7.1.0
- laravel/framework: ^5.8.30|^6.0|^7.0|^8.0|^9.0|^10.0|^11.0
- m6web/redis-mock: ^4.2|^5.0
- predis/predis: ^1.1|^2.0
Requires (Dev)
- orchestra/testbench: ~3.8.0|^4.0|^5.0|^6.0|^7.0|^8.0|^9.0
- phpunit/phpunit: ^7.0|^8.0|^9.5.10|^10.5
README
此Laravel扩展包为您的测试提供Redis模拟。它依赖于Redis PHP Mock。
这使得您可以在没有本地Redis服务器运行的情况下运行测试!
安装与使用
要开始,请使用Composer将包添加到项目的依赖项中
composer require josiasmontag/laravel-redis-mock
此包添加了一个新的mock
Redis客户端。
在config/database.php
中,通过环境变量使Redis客户端可配置
'redis' => [ 'client' => env('REDIS_CLIENT', 'predis'), ... ],
现在,您可以在.env.testing
中切换到mock
客户端
REDIS_CLIENT=mock
或者,您可以在phpunit.xml
中切换到模拟
<env name="REDIS_CLIENT" value="mock"/>
完成!您的测试应该在本地Redis服务器未运行的情况下正常工作。
包开发
如果您正在使用Redis作为Laravel包的一部分,您应该已经有一个继承自Orchestra\Testbench\Testcase
的TestCase.php
。
在此文件中,您应该将RedisMockServiceProvider
添加到getPackageProviders
方法中,例如。
/**
* @param $app
* @return string[]
*/
protected function getPackageProviders($app): array
{
return [
YourPackageServiceProvider::class,
\Lunaweb\RedisMock\Providers\RedisMockServiceProvider::class
];
}