我正在尝试在 setUp 中创建一个模拟实例,其中所有覆盖方法的默认值,然后在几个不同的测试中根据我正在测试的内容更改某些方法的返回值,而无需设置整个 Mock . 有没有办法做到这一点?
这是我尝试过的,但天真的方法不起作用。该方法仍然返回原始期望设置的值。
第一个设置:
$my_mock->expects($this->any())
->method('one_of_many_methods')
->will($this->returnValue(true));
在另一个断言之前的另一个测试中:
$my_mock->expects($this->any())
->method('one_of_many_methods')
->will($this->returnValue(false));
重复这个问题:PHPUnit Mock 稍后更改期望,但没有得到回应,我认为一个新问题可能会将问题带到前台。