2015-07-24 8 views
5

Generalmente sviluppando in C e Java, non riesco a ottenere correttamente i test PHPUnit per l'esecuzione in Eclipse.Ottenere PHPUnit test per funzionare in Eclipse con PDT e MakeGood

Ho Eclipse Luna SR1 (4.4.1) installato con PDT 3.4.0 e MakeGood 3.1.1 su Ubuntu 15.04.

Prima ho avuto l'errore

PHPUnit_Framework_TestCase class is not available. Fix...

in MakeGood e cercando di aggiungere la libreria PEAR [Environment] utente al percorso di generazione per risolvere questo problema più volte venuto a mancare con

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

che potrebbe essere ha funzionato aggiungendo

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

a .buildpath nella cartella del progetto Eclipse.

Esecuzione di un test poi però non riuscita con

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

Così ho creato un bootstrap.php:

<?php 

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

e un phpunit.xml:

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

e impostarle come "precarico Script "e" XML C onfiguration File "nelle proprietà del progetto MakeGood.

Si va oltre, ma ora il test fallisce con

Fatal error: Class 'mysqli' not found

Questo è dove mi sono perso ora.

Se si esegue il test sulla riga di comando con

phpunit --coverage-html coverage .

tutti funzionano bene e anche si creano i rapporti di copertura HTML.

Nelle preferenze Eclipse in Eseguibili PHP ho selezionato PHP CLI (Workspace Default) con Posizione /usr/bin/php; lo stesso php eseguibile viene usato sulla riga di comando quindi presumo che anche lo stesso php.ini sia usato ... quindi non so perché fallisce in Eclipse ma funziona sulla riga di comando.

Qualche suggerimento?

+0

Le informazioni nella tua domanda mi sono state utili. – ahmedsafan86

risposta

0

Alla fine ho scoperto - nelle preferenze Eclipse sotto PHP eseguibili, ho dovuto impostare PHP 5.5.3 (CLI) come predefinito ed effettuare le seguenti impostazioni:

enter image description here

importante è avere il file PHP ini campo"(facoltativo) "vuoto e l'opzione" Usa configurazione php.ini di sistema predefinita "selezionata.

Ora tutti i test sono in esecuzione in MakeGood.