如果我使用 Mockery 模拟接口并将 shouldReceive 与不存在的方法一起使用,我希望我的测试失败。环顾四周没有帮助。
例如 :
带接口:
interface AInterface {
public function foo();
public function bar();
}
和一个测试用例:
function testWhatever{
Mockery::mock('AInterface')->shouldReceive('bar');
$this->assertTrue(true);
}
测试将通过。
现在,重构时间,bar 方法在一个地方不需要(假设它在多个地方都需要)并且从接口定义中被抑制,但测试仍然会通过。我希望它失败。
是否可以使用嘲弄来做这样的事情(并且能够用类而不是接口做同样的事情)?或者是否存在使用其他工具或测试方法的解决方法?
不确定是否可以按原样理解,如果需要,将尝试对问题进行更清晰的描述。