我只是在使用CakePHP尝试PHPUnit,并且在尝试在控制器测试用例中使用testAction()方法时出现以下错误。
致命错误:调用未定义的方法GroupsControllerTestCase :: testAction()
使用控制台烘焙控制器测试用例,我使用的是2.x文档中的以下内容。
public function testIndex() {
$result = $this->testAction('/groups/index');
debug($result);
}
GroupsControllerTest.php
<?php
App::uses('GroupsController', 'Controller');
class TestGroupsController extends GroupsController {
public $autoRender = false;
public function redirect($url, $status = null, $exit = true) {
$this->redirectUrl = $url;
}
}
class GroupsControllerTestCase extends CakeTestCase {
public $fixtures = array('app.group');
public function setUp() {
parent::setUp();
$this->Groups = new TestGroupsController();
$this->Groups->constructClasses();
}
public function tearDown() {
unset($this->Groups);
parent::tearDown();
}
public function testIndex() {
$results = $this->testAction('/groups/index');
debug($results);
}
.....
答案 0 :(得分:2)
我相信你的测试用例应该扩展ControllerTestCase,而不是CakeTestCase。
class GroupsControllerTestCase extends ControllerTestCase {
...