在此模拟对象上找不到模拟方法 shouldRecieve() [关闭]

Posted

技术标签:

【中文标题】在此模拟对象上找不到模拟方法 shouldRecieve() [关闭]【英文标题】:Mockery method shouldRecieve() is not found on this mock object [closed] 【发布时间】:2013-03-02 17:09:38 【问题描述】:

我正在使用带有 Laravel 和 phpunit 的 padraic/mockery 包。我在 PHP 5.4.3 上。

当尝试创建一个模拟对象来测试控制器时,我收到一个错误:

"BadMethodCallException: Method ... shouldRecieve() is not found on this mock object"

我的代码在下面,我非常关注教程,但无法弄清楚为什么我的模拟对象似乎没有正确实例化。

public function testItWorks()

    $mocked = m::mock('SearchRepositoryInterface');
    App::instance('SearchRepositoryInterface', $mocked);

    $mocked->shouldRecieve('test')->once()->andReturn('NOT hitting the db');
    $response = $this->call('GET', 'search');

    $this->assertTrue($response->isOK());

【问题讨论】:

【参考方案1】:

你有一个错字。 它是shouldReceive 而不是shouldRecieve

【讨论】:

该死!我花了几个小时试图弄清楚这里发生了什么。我差点放弃嘲讽!它总是很小的东西......不过,谢谢,好地方! i 在 e 之前,c 之后除外

以上是关于在此模拟对象上找不到模拟方法 shouldRecieve() [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

在模拟器上找不到浮动操作按钮

Xcode 11 beta 上找不到 iPhone 7 模拟器

Powershell:在此对象(WIN10 - 18363)上找不到属性“WorkingDirectory”但存在

找不到对象!在此服务器上找不到请求的 URL。 PHP文件未被访问

找不到对象!在此服务器上找不到请求的 URL。如果您手动输入网址,请检查您的拼写并重试

在 Mac OS 上找不到 /dev/kvm