phpunit Befehl funktioniert nicht für laravel 4 auf windows 7
Ich habe vor kurzem installiert laravel und geschrieben haben, einige tests /tests-Verzeichnis, aber wenn ich phpunit
im cmd in den gleichen Ordner, dass phpunit.xml
vorhanden ist, es sagt 'phpunit' is not recognized as an internal or external command,operable program or batch file.
. Ich bin mit windows 7. was soll ich tun?
- Ja, ich meine es installiert
- Hast du die Umgebungsvariablen?
- Umgebungsvariablen für was?
- In der Lage sein, um Befehle auszuführen, die mit
phpunit
. Es war vor der Arbeit? - Nein, war es nicht , also du meinst ich sollte hinzufügen, die phpunit ausführbare Datei im PFAD ja?
- Großes ja! Wenn es nicht bereits. Versuchen
echo %PATH%
Sie in cmd ein und finden Sie in der Ausgabe enthaltenphpunit
Du musst angemeldet sein, um einen Kommentar abzugeben.
Die Lösung für mich:
Diese, natürlich, vorausgesetzt, Sie haben einrichten einer php-Umgebungsvariablen in Windows
Als Unnawut gesagt, es funktioniert nicht, weil vendor/phpunit/phpunit/phpunit ist nicht eine native ausführbare Datei unter Windows. Sie brauchen eine .bat-oder .cmd-Datei, die im Grunde Aufruf von 'php-phpunit'. Es sollte ein vendor/bin, aber das Leben einfacher zu machen, versuchen Sie diese - erstellen Sie eine Datei mit phpunit.bat (oder .cmd) an der Wurzel Ihrer Website, mit diesem:
Rufen Sie nun phpunit von der Kommandozeile aus auf das Stammverzeichnis der Website.
Wenn Sie ein Fenster Benutzer und Sie sind mit diesem Problem, dies zu tun:
Müssen Sie mitteilen-Fenster, wo Sie zu finden PHPUnit Befehl, können Sie zunächst überprüfen, ob diese Datei vorhanden ist in eurer Laravel Projekt unter /vendor/bin
Schließlich müssen Sie fügen Sie den vollständigen Pfad zu
/vendor/bin
im Fenster PATH-variable,Dazu:
1. Mit der rechten Maustaste auf 'Computer' klicken Sie dann auf Eigenschaften
Advanced system settings
Advanced
klicken Sie aufEnvironmental Variables
PATH
dann legen Sie die variable PATH durch Anhängenden vollständigen Pfad zu Ihrer
laravel-project/vendor/bin;
Beachten Sie die;
am Ende.NB: Andere Variablen, die möglicherweise bereits im PFAD, so sicherzustellen, dass Sie nicht überschreiben, indem Sie Ihre eigenen, ganz am Ende
Ok
auf alle DialogfelderDie phpunit ausführbare Datei wird nicht im Projekt-root-Ordner, das ist, warum Sie es nicht finden können.
Nun ich gehe davon aus, dass Sie bereits phpunit in Ihrem
composer.json
- Datei, so etwas wie dieses:Bei Installation von composer, das Paket wird installiert zu
vendor/vendor_name/package_name
. So starten Sie Ihre Projekt-root, und geben Sie diesen Befehl ein:composer update
Recht?composer update
und danach tunvendor/phpunit/phpunit/phpunit
aus dem Ordner, den Sie habenphpunit.xml
Fügte ich diesen Befehl in die Befehlszeile ein, anstatt nur "phpunit"
Dass für mich gearbeitet.
Kreditaufnahme von @Chris' ausgezeichnete Antwort:
Noch besser, Sie können machen
vendor/phpunit/phpunit/phpunit
eine Umgebungsvariable, sagen, "phpunit" und, Wann immer Sie wollen, führen Sie den test in jedem laravel Projekt rufen Sie einfachphp %phpunit%
.Demonstration
Wenn es sagt das folgende:
$ phpunit tests/Feature/ExampleTest.php
PHPUnit 3.7.21 von Sebastian Bergmann.
Klasse 'tests/Feature/ExampleTest' konnte nicht gefunden werden 'C:\xampp\htdocs\blog1\tests\Feature\ExampleTest.php'.
Statt Tippen tests/Feature/ExampleTest.php Sie sagen tests " \\Funktion\\Beispiel.test", weil Sie unter windows, nicht mac. 🙂 GL & HF
Einfach mit \ oder /gebe Fehler 🙂