状況
CakePHP2.x アプリでコントローラー単体テストを開始しようとしています。ドキュメントを参照していますが、まだ testAction メソッドでエラーが発生しており、その理由や何をすべきかわかりません。
コントローラーコード:
App::uses('AppController', 'Controller');
class BranchLicenseApplicationsController extends AppController {
public $components = array('Session', 'Cookie', 'EntityManager');
public function index() {
$this->BranchLicenseApplication->recursive = 0;
$this->set('branchLicenseApplications', $this->paginate());
}
}
テストコード:
class BranchLicenseApplicationsControllerTest extends ControllerTestCase {
public $fixtures = array(
'app.branch_license_application', 'app.ref_access_map'
);
public function testIndex() {
$this->testAction('/branchlicenseapplications/index');
}
}
出力
1) BranchLicenseApplicationsControllerTest::testIndex
Indirect modification of overloaded property
Mock_BranchlicenseapplicationsController_869bb477::$BranchLicenseApplication
has no effect
私の質問/私が考えていること
簡単なものが欠けているようですが、それを理解するにはまだ十分ではありません。私はテストが初めてなので、コントローラーのテストに必要なすべてのインスタンス化とモックを完全に把握していない可能性があります。
エラーの「モック」に気付きました...しかし、モックされたオブジェクトは使用していません。私はすべきですか?それとも、正しい方向に考えていますか?