如何模拟Predis客户端以测试Redis操作

use*_*863 5 php unit-testing redis laravel

在Laravel Lumen 5.5安装中,我创建了一个通过Predis与Redis实例进行交互的类。我拥有predis / predis和illuminate / redis软件包,并注册了Redis服务提供商。

我的班级通过流水线运行一些redis命令,以节省操作数量。我对本地Redis服务器的手动测试似乎正常,因为我可以验证数据是否按预期写入。

现在,我想使用模拟的Predis客户端为类创建单元测试。我发现以下库似乎提供了我需要的功能:

https://github.com/M6Web/RedisMock

它确实支持我使用的所有操作。但是,我不确定如何由我的班级强制使用此模拟客户端,因为它仅使用Illuminate服务提供商提供的Redis客户端。那有可能吗?

如果不通过使用RedisMock库,是否还有其他方法可以让我编写redis操作的单元测试-无需实际的redis服务器来支持它?

提前致谢。