Lzh on GitHub

PHP 魔术方法

以双下划线为前缀的 PHP 魔术方法,例如 __set(),在模拟和单元测试中通常会带来特殊的问题。强烈建议单元测试和模拟对象不要直接引用魔术方法。相反,只引用这些魔术方法所模拟的虚拟方法和属性。

以双下划线为前缀的 PHP 魔术方法,例如 __set(),在模拟和单元测试中通常会带来特殊的问题。强烈建议单元测试和模拟对象不要直接引用魔术方法。相反,只引用这些魔术方法所模拟的虚拟方法和属性。

遵循这条建议将确保我们正在测试类的真实 API,并且还可以确保在 Mockery 覆盖这些魔术方法时不会发生冲突,而 Mockery 不可避免地会这样做,以便支持其拦截方法调用和属性的作用。