2015-07-24 6 views
5

Normalerweise entwickle ich in C und Java, aber ich bekomme keine PHPUnit-Tests, die in Eclipse korrekt ausgeführt werden.PHPUnit-Tests in Eclipse mit PDT und MakeGood arbeiten

Ich habe Eclipse Luna SR1 (4.4.1) mit PDT 3.4.0 und MakeGood 3.1.1 auf Ubuntu 15.04 installiert.

Zuerst hatte ich den Fehler

PHPUnit_Framework_TestCase class is not available. Fix...

in MakeGood und versuchen, die PEAR [Environment] Anwenderbibliothek auf den Build-Pfad hinzuzufügen, dies immer wieder mit

Cannot create linked resource '/.org.eclipse.dltk.core.external.folders/.link1'

dass nicht zu beheben sein könnte funktionierte um

<buildpathentry kind="con" path="org.eclipse.dltk.USER_LIBRARY/PEAR"/> 

zu .buildpath im Eclipse-Projektordner.

einen Test laufen dann scheiterte jedoch mit

Fatal error: Class 'PHPUnit_Framework_TestSuite' not found in [...] PHPUnitCollector.php on line 124

So habe ich eine bootstrap.php:

<?php 

include_once '/usr/share/php/PHPUnit/Autoload.php'; 
include_once '/usr/share/php/PHP/Token/Stream/Autoload.php'; 

und phpunit.xml:

<phpunit bootstrap="bootstrap.php"> 
</phpunit> 

und sie als „Preload Skript "und" XML C Konfigurationsdatei "in den MakeGood-Projekteigenschaften.

Es geht weiter, aber jetzt schlägt der Test mit

Fatal error: Class 'mysqli' not found

Dies ist, wo ich jetzt bin verloren.

Wenn ich die Tests auf der Kommandozeile mit

phpunit --coverage-html coverage .

sie alle gut laufen und auch die HTML-Berichterstattung Berichte erstellt werden.

In den Eclipse-Einstellungen unter PHP Executables habe ich PHP CLI (Workspace Default) mit der Position /usr/bin/php ausgewählt; die gleiche php-ausführbare Datei wird auf der Kommandozeile verwendet, also nehme ich an, dass auch die gleiche php.ini verwendet wird ... also weiß ich nicht, warum es in Eclipse fehlschlägt, aber in der Befehlszeile funktioniert.

Irgendwelche Vorschläge?

+0

Die Informationen in Ihrer Frage waren nützlich für mich. – ahmedsafan86

Antwort

0

Schließlich fand ich heraus - in Eclipse-Einstellungen unter PHP Executables, hatte ich PHP 5.5.3 (CLI) als Standard festlegen und die folgenden Einstellungen vornehmen:

enter image description here

Wichtig hier ist das Feld „PHP ini-Datei (optional) "leer und die Option" System default php.ini Konfiguration verwenden "aktiviert.

Jetzt laufen alle Tests in MakeGood.

Verwandte Themen