2014-12-02 16 views
17

Ho PHPStorm 8.0.1.PhpStorm PhpUnit via phar completamento automatico non funziona

PHPUnit è installato tramite archivio PHAR come:

wget https://phar.phpunit.de/phpunit.phar 
chmod +x phpunit.phar 
sudo mv phpunit.phar /usr/bin/phpunit 

PHPUnit funziona tramite CLI:

[email protected]:/usr/bin$ cd ~ 
[email protected]:~$ phpunit --version 
PHPUnit 4.3.5 by Sebastian Bergmann. 

Ho seguito le istruzioni dal sito JetBrains https://www.jetbrains.com/phpstorm/webhelp/enabling-phpunit-support.html#d298258e897

In PhpStorm File-> scheda Impostazioni PHP/PHPUnit il pulsante radio Path to phpunit.phar è selezionato e il valore è s et al /usr/bin/phpunit

Ho un file con un test definito come:

class MyTest extends PHPUnit_Framework_TestCase { 
... 

a questo punto segna PhpStorm Undefined class PHPUnit_Framework_TestCase

ho riavviato PhpStorm e computer, ma hanno ancora lo stesso problema.

Ho anche provato ad aggiungere /usr/bin per includere il percorso (fare clic con il pulsante destro del mouse su librerie esterne nella vista progetto e scegliere l'opzione Configure PHP include paths) senza successo.

Ecco la configurazione per le impostazioni PhpStorm, scheda PHP (se è importante):

PHP Language level: 5.5 (finally, generators, etc.) 
Interpreter: PHP 5.5 (5.5.9-1ubuntu4.5) 
Include path is empty 
+5

Se è un file PHAR, dovrebbe avere l'estensione '.phar' - è un requisito, sfortunatamente. Basta inserire 'phpunit.phar' ovunque nel tuo progetto - sarà sufficiente per IDE indicizzarlo. – LazyOne

+0

C'è un modo per non includere quel file nel progetto e in qualche modo leggerlo da un'altra posizione (con estensione phar)? – YomY

+1

Usa il collegamento simbolico. Oppure posiziona una copia (o un collegamento simbolico) in una cartella separata e fai riferimento a tale cartella tramite la funzionalità "Includi percorsi" – LazyOne

risposta

35

Al fine di avere archivio PHAR indicizzato da IDE deve avere .phar estensione (che è un requisito).

La soluzione più semplice è posizionare phpunit.phar da qualche parte nel progetto (di solito è la cartella PROJECT_ROOT/vendor/).

Se avere copia locale non è desiderata (per qualsiasi motivo, anche se il compositore e l'altro simile tipo di strumenti (pergolato/NPM/etc) si rivolgono principalmente a mantenere localmente roba dipendenze/pacchetti), è possibile utilizzare link simbolici : creare un collegamento simbolico a tale file localmente (ad es. PROJECT_ROOT/phpunit.phar ->/usr/bin/phpunit) o inserire una copia completa (o un collegamento simbolico) nella cartella separata da qualche parte sul disco e quindi fare riferimento tramite la funzionalità Settings | PHP | Include Paths di PhpStorm.

+0

Questa sembra essere la soluzione, tuttavia per me non ha funzionato, probabilmente a causa di un bug in PhpStorm. Quello che ho fatto per risolvere il problema è fare clic con il tasto destro su .phar e fare clic su "Escludi phar dal progetto", quindi fare nuovamente clic su "Includi phar nel progetto". – Calin

Problemi correlati