laralvel 如何mock一个facade 如何模拟一个facade方法

即使是天涯海角,也是有尽头的。唯有梦想,是没有尽头的。

 

如何 mock 一个静态 facade 方法?

Facades 为应用程序的服务容器中可用的类提供“静态”接口。与传统的静态方法调用不同,Facades 是可被 mock 的。我们可以使用 shouldReceive 方法 mock 对静态外观方法的调用,该方法将返回 Mockery mock 的实例。

比如:

// 实际代码
$value = Cache::get('key');

// 测试
Cache::shouldReceive('get')
                    ->once()
                    ->with('key')
                    ->andReturn('value');

 

posted @ 2022-10-17 09:02  方达达  阅读(7)  评论(0编辑  收藏  举报