2012-04-04 10 views
1

Ich versuche, PHPUnit Test bei CakePHP 2.0 zu laufen. Es gibt kein Problem mit meinem Modellversuch, aber wenn ich versuche, meine Controller Tests i diesen Fehler zu laufen:Controller nicht gefunden versuchen PHPUnit Tests bei CakePHP 2.0

Fatal error: Class 'Controller' not found in `/Applications/MAMP/htdocs/mysite/app/Controller/AppController.php on line 7` 

Was ist los? Danke.

Antwort

4

Sie immer brauchen, um richtig die verwendeten Klassen definieren (die Sie erweitern möchten) - auch in Ihrem Controller:

App::uses('Controller', 'Controller'); 

class AppController extends Controller {} 

Sie vermissen die App :: Anweisung verwendet.

+1

Nein, alle Controller funktionieren gut. Ich habe diese Zeile in meinem Code. Das Problem ist nur, wenn ich versuche, sie mit PHPUnit Tests zu testen. – Alvaro

+0

die Controller werden immer gut funktionieren (von der Anwendung selbst). Sie sind also 100% sicher, dass die App :: uses() -Anweisung im App-Controller ist? und Sie nicht die Controller-Klasse selbst verwenden, bevor die AppController-Klasse aufgerufen wird? Ich bin mir ziemlich sicher, dass das dein Problem ist. Sie können umgehen, indem Sie die gleiche Anweisung zu Ihrem Testfall hinzufügen - ganz oben. Aber es wäre sauberer, das Problem mit der richtigen Include-Reihenfolge zu beheben. – mark

+0

Sie haben völlig Recht Mark :) Danke für alle und Entschuldigung für meine vorherige Antwort, ich habe es nicht gut gelesen. – Alvaro

Verwandte Themen