2012-07-31 11 views
36

Ich benutze Symfony2, alles ist installiert, meine Tests funktionieren so gut.Wie kann ich die IDE-Autovervollständigung für PHPUnit bekommen?

Ich möchte eine automatische Vervollständigung der PHPUnit Methoden bekommen.

der Symfony WebTestCase Klasse reicht von PHPUnit_Framework_TestCase wie unten:

abstract class WebTestCase extends \PHPUnit_Framework_TestCase 

Die Elternklasse als nicht vorhanden, obwohl hervorgehoben.

Wie kann ich meiner IDE mitteilen, die PHPUnit-Bibliothek zu verwenden?

I PhpStorm
PHPUnit bin mit ist durch Pfad zur Verfügung /Users/myUser/pear/share/pear/PHPUnit/

Antwort

52

es als Bibliothek hinzufügen ... in das Projekt, das Sie hinzufügen, es zu ‚External Libraries‘ bearbeiten.

Es sollte dann enthalten sein.

+0

So einfach und es hat geklappt :) Blöd mich: D –

+9

FYI, zu bekommen zu deinen Projekteinstellungen auf Mac, klicke auf PhpStorm -> Einstellungen, klicke auf PHP (unter Projekteinstellungen), und dann kannst du auf der rechten Seite Pfade zu deinem Include-Pfad hinzufügen. – Shivaas

+1

Was ist mit der PHP-Implementierung von phpunit? UPDATE: Ich habe das auf meinem Mac um nur eine Homebrew-Installation der lib. –

17

Für mich (Ubuntu 12.04) wurde das Hinzufügen dieser Ordner als externe Bibliothek:

/usr/share/php/PHPUnit 
16

Für PhpStorm Benutzer, Datei -> Einstellungen -> Projekteinstellungen -> PHP und den Pfad dort hinzuzufügen.

+5

Mit phpunit installiert von Homebrew, der Pfad ist/usr/local/opt/phpunit/libexec/(dies ist ein Symlink, so dass es auch bei Versionsänderungen konstant bleibt) – Loren

+0

@Loren, danke! –

2

Ich habe OSX installiert phpunit von Homebrew und PhpStorm 9.0

So wie es für mich funktioniert, öffnet Vorlieben oder drücken Sie cmd +, -> Sprachen & Frameworks -> PHP -> Fügen Sie Pfad -> add „/ usr /local/Cellar/phpunit/4.7.6/libexec/ "

3

Sie können das Paket phpunit/phpunit in den Abschnitt require-dev Ihrer composer.json-Datei einfügen.

Nach der Ausführung von composer install wird PHPSstorm über die PHPUnit-Klassen bekannt sein.

+0

Können Sie Ihrer Antwort einige Details hinzufügen? –

+0

Das funktionierte gut für mich, das Hinzufügen der Lib manuell (wie in anderen Antworten) funktionierte nicht für mich. – Czechnology

+0

Maxim: Fügen Sie einfach z. '" phpunit/phpunit ":"^5.4.6 "' zum '" require-dev "' Abschnitt Ihrer 'composer.json' und führen' composer update' aus. – Czechnology

10

PhpStorm 2016.2 führt eine Funktion ein, die in diesem Fall auch ein Fehler ist.

Autovervollständigung enthält jetzt nicht mehr statische Methoden als Option, wenn im $ this-> Kontext. (https://blog.jetbrains.com/phpstorm/2016/07/completion-changes-in-phpstorm/#more-10425)

Da phpunit-Tests als statische Methoden definiert sind, aber über $ this-> aufgerufen werden, ist die automatische Vervollständigung für phpunit jetzt effektiv unterbrochen.

Sie haben diese Änderung für phpunit in der nächsten EAP (https://youtrack.jetbrains.com/issue/WI-32530) zurückgesetzt.

Problemumgehung bis zur nächsten stabilen Version: Drücken Sie zweimal STRG-Leertaste; Dies zeigt dann statische Methoden im Autocomplete-Feld an.

+3

Wow, danke, ich habe mich gefragt und habe ein paar Mal nach Bugs gesucht. Der Ctrl Space funktioniert vorerst. – Nick

0

Ich habe PHPSstorm 2017.1.4 und mein Betriebssystem ist Ubuntu 16.04. Ich habe bereits phpunit.phar in meinem/usr/local/bin installiert.

Ich werde ~/WORK/.. für die Beispielpfade verwenden, aber Sie sollten den vollständigen Pfad/home/myname/WORK/verwenden ..

Was habe ich wird gehen Sie einfach in einen Ordner in meinem Haus (wie: ~/ARBEIT /) und laufen:

composer require phpunit/phpunit 

Nach Komponist fertig war das Herunterladen phpunit ich ein neues Projekt hinzugefügt umfassen Pfad:

Jetzt habe ich alle PHPUnit Autovervollständigung, ich kann direkt in PHPUnit Quellcode springen und ich kann den PHPUnit-Code mit Composer aktualisiert halten. Ich entfernte auch die phpunit.phar aus/usr/local/bin und ersetzte sie durch einen Link zu ~/WORK/vendor/bin/phpunit

Verwandte Themen