我正在使用Silex和PHPUnit构建一个PHP应用程序进行单元测试。
在我的控制器中,我有以下代码:
public function indexAction(Application $app) {
return $app['twig']->render('admin/pages/index.html.twig', array(
'pages' => $this->pageDao->getAllPage()
));
}
在我的单元测试中,我想检查 getAllPage 被调用。
我写过以下单元测试:
public function testIndexAction()
{
$client = $this->createClient();
$stub = $this->getMockBuilder('Lsi\Dao\PageDao')
->setMethods(array('getAllPage'))
->setConstructorArgs(array(DatabaseFactory::getDatabaseForTesting()))
->getMock();
$crawler = $client->request('GET', '/private.pages/');
$this->assertEquals($client->getResponse()->isOk(), true);
$stub->expects($this->once())->method('getAllPage');
}
控制器路由返回内容但我在方法期望上出错:
方法名称的期望失败等于1次调用时的期望值。 预计方法被调用1次,实际上被称为0次。
感谢您的帮助。