繁体   English   中英

PHPunit和Mockery:未找到方法

[英]PHPunit and Mockery: method not found

我在使用PHPunit和Mockery时遇到问题。 由于某种原因,PHPunit说我在Mockery中定义的onFoo方法不存在。

public function testReturnsTheCorrectValueWithClass()
{
    $listener = \Mockery::mock('FooListener');
    $listener->shouldReceive('onFoo')
             ->once()
             ->andReturn('foo');

    $this->eventManager->attach('foo.class', array($listener, 'onFoo'));

    $this->assertTrue($this->eventManager->dispatch('foo.class') === 'foo');
}

有人知道这段代码有什么问题吗?

我找到了解决问题的方法! 它与测试代码无关,但与EventManager获取模拟对象的方式无关。 我创建了模拟对象的新实例,而不仅仅是使用现有实例。

谢谢大家的帮助!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM