前端之家收集整理的这篇文章主要介绍了
php – 可以模拟受保护的属性和方法,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
是否可以用
PHP Mockery模拟受保护的财产?
我得到了一个类的方法,我会称之为“a”,对从同一个类的受保护属性中检索的数组有一些魔力.
该受保护的属性由另一个方法b在同一个类中填充.
我想通过嘲笑受保护的属性来测试方法a,所以我不必先进行类方法b.
这是可能吗?如果没有,我应该重构我的代码?还是有其他方式(考虑最佳做法).
有可能模拟受保护的
方法,但是有些人指出,如果您觉得需要嘲笑这些
方法,您可能需要重构
代码.
如果你想要模拟受保护的方法,你可以按照下面的例子来做到这一点:
$myMock = Mockery::mock('myClass')->shouldAllowMockingProtectedMethods();
使用这个模拟,那么可以用与模拟公共方法相同的方式来模拟受保护的方法.