PhpUnit test -非模拟方法不存在


PhpUnit test - Non-mocked method does not exist

我在调用公共方法时遇到了问题。有一个简单的例子:

class Foo {
    public function bar()
    {
        return array();
    }
}
//test code
$test = $this->getMock('Foo', array('____'));
var_dump($test instanceof Foo);
var_dump(method_exists($test, 'bar'));
$result = $test->bar();

,我得到以下结果:

bool(true)
bool(false)
Fatal error: Call to undefined method Mock_Foo_abdf1ea1::bar()

自动加载的问题,正如上面提到的(我的bootstrap.php没有加载)。所以阶级是被创造出来的,但不是来自真正的阶级。我得到了一个错误的行:

new Foo();

所以在这种情况下,我认为这是检查类加载的最好方法