在我的 laravel 应用程序中,我使用 Redis 来存储一些缓存(例如要显示在首页上的项目列表)。我总是通过 Facade 访问 Redis:Illuminate\Support\Facades\Redis
。
我创建了一个不同的 Redis 数据库用于测试(1
而不是 0
),但我还需要在每次测试后重新设置它,这样测试就永远不会获取数据从以前的测试。
是否有一种有效的方法来创建这种行为?
我尝试使用 @before
注释来实现它:
/**
* @before
*/
public function prepareForTesting() {
Redis::flushdb();
}
但我收到错误:无法在连接集群上使用“FLUSHDB”。
有什么想法吗?
最佳答案
也许您可以使用内置的 artisan cache:clear
命令?
像这样:
/**
* @before
*/
public function prepareForTesting() {
Artisan::call('cache:clear');
}
关于laravel - 在 laravel 中每次测试后重置 Redis 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55573663/