【发布时间】:2017-11-18 03:41:58
【问题描述】:
我正在寻找一种模拟对象并填充其属性的方法。 下面是一个使用另一个对象属性的方法示例:
class MyClass {
private $_object;
public function methodUnderTest($object) {
$this->_object = $object;
return $this->_object->property
}
}
要对该方法进行单元测试,我应该使用来自PHPUnit 的getMockBuilder() 方法创建一个模拟$object。但我找不到模拟$object 属性的方法,只有方法。
【问题讨论】:
-
为什么不直接设置这些属性而不模拟它们?
-
我实际上尝试过这样做,但直到今天才知道为什么它从来没有奏效。感谢您的提醒,您实际上可以像通常使用对象一样设置模拟对象的属性
-
幸运的是,我并没有完全发疯,您提出的简单解决方案适用于我的大多数课程,但对于一对夫妇来说,它不起作用,它只会返回
NULL
标签: php unit-testing mocking phpunit mockery