代码:
$mockObject = $this->getMock('ORM_User'); $mockObject->expects($this->at(0)) ->method('xxx') ->with($this->equalTo('a')) ->will($this->returnValue('aaa')); $mockObject->expects($this->at(1)) ->method('xxx') ->with($this->equalTo('b')) ->will($this->returnValue('bbb')); var_dump("-".$mockObject->xxx('a')); var_dump($mockObject->xxx('b')); $tmp = new ORM_User(); var_dump($tmp->xxx('a')); var_dump($tmp->xxx('b'));
输出:
string(4) "-aaa" string(3) "bbb" NULL NULL
答案 0 :(得分:3)
确切地说明了你所说的内容,并且只要我能看到它就能正常工作。
你创建一个“假的”ORM_User并告诉xxx函数返回“aaa”和“bbb”并且它会这样做。
然后你创建一个真正的 ORM_USER并调用它,它返回null但是这是phpunit的范围。你只是在那里打电话给真正的班级,我不知道你在哪里得到它。
也许告诉我们你要做什么?