设置 PHPUnit Mock 后,是否可以更改该方法?
我正在尝试在 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稍后更改期望,但那个人没有得到任何回应,我认为一个新问题可能会把这个问题放在首位。