2012-12-04 8 views
5

Ich benutze PHPUnit 3.4.14 und ich versuche, einen Listener hinzuzufügen.PHPUnit Listener geladen, aber nicht verwendet

schrieb ich einfach:

class My_Test_Listener implements PHPUnit_Framework_TestListener 
{ 
    public function addError(PHPUnit_Framework_Test $test, Exception $e, $time) 
    { 
... 

ich es in meinem phpunit.xml Datei deklariert:

<phpunit bootstrap="./bootstrap.php"> 
    <testsuites> 
     <testsuite name="auth"> 
      <directory>./library/Ademe/Auth</directory> 
     </testsuite> 
    </testsuites> 
    <listeners> 
     <listener class="Listener" file="./library/My/Test/Listener.php"> 
    </listener> 
    </listeners> 
</phpunit> 

Meine Klasse geladen wird (wenn ich weglassen eines der Verfahren zu implementieren, ist es sagt so in den Protokollen), aber ich gehe nie in diese Methoden. Ich versuchte das zum Beispiel:

public function startTestSuite(PHPUnit_Framework_TestSuite $suite) 
{ 
    die('startTestSuite'); 
} 

Haben Sie eine Ahnung von was könnte fehlen?

Danke!

Antwort

6

OK Ich habe es, der Klassenname war falsch, obwohl kein Fehler gemeldet wurde. Ich sollte dies stattdessen getan haben:

<phpunit bootstrap="./bootstrap.php"> 
    <testsuites> 
     <testsuite name="auth"> 
      <directory>./library/Ademe/Auth</directory> 
     </testsuite> 
    </testsuites> 
    <listeners> 
     <listener class="My_Test_Listener" file="./library/My/Test/Listener.php"> 
    </listener> 
    </listeners> 
</phpunit> 
+1

ich das gleiche Problem haben, Dank! Du solltest deine Antwort akzeptieren! –

+3

Ich hatte das gleiche Problem, ich musste den vollständigen Namespace hinzufügen. – b01

+1

Ich wünschte, es wäre ein Fehler aufgetreten, wenn die Klasse nicht gefunden wurde. – b01

3

ich den gleichen Fehler hatte, aber der Hörer nur funktioniert, wenn ich

verwendet
<listener class="\Name\Space\MyTestListeners" ></listener> 
Verwandte Themen