Phpunit: Testfall öffnet sich nicht, wirft ' Kann Datei "mytest.php" nicht öffnen '

Erstellt am 24. Juni 2011  ·  19Kommentare  ·  Quelle: sebastianbergmann/phpunit

Hallo,
Ich habe PHPUnit 3.5.14 mithilfe der Pear-Paketinstallation auf meiner Sandbox installiert, auf der CentOS 5.2 ausgeführt wird

Als ich versuchte, meine Testfälle am Standort auszuführen:

    /var/www/testcases/mytest.php

mit dem Terminalbefehl:

    phpunit mytest.php

Dies wirft mir den folgenden Fehler:

PHPUnit 3.5.14 von Sebastian Bergmann.

Datei "mytest.php" kann nicht geöffnet werden.

Ich habe sogar versucht, phpunit zu deinstallieren und neu zu installieren, aber dann wird immer noch der gleiche Fehler ausgegeben.
Der Code in mytest.php sieht wie folgt aus:

Die Klasse mytest erweitert PHPUnit_Framework_TestCase
{
öffentliche Funktion testOne()
{
$this->assertTrue(FALSE);
}

/**
 * <strong i="24">@depends</strong> testOne
 */
public function testTwo()
{
}

}
?>

Jede Hilfe wäre sehr willkommen.
Danke, dass Sie sich meinen Beitrag angesehen haben.

Grüße,
LoGiX

Hilfreichster Kommentar

Ich habe immer noch dieses Problem. Ich rufe die PHP-Einheit für die Datei mit und ohne die Erweiterung ".php" auf. Ich referenziere die Datei bootstrap.php in meinem XML korrekt und habe auch versucht, explizit mit "--bootstrap" darauf zu verweisen. Ich kann auch eine andere Testdatei im selben Ordner problemlos ausführen. Eigentlich alle außer dieser. Sie haben alle die gleichen Berechtigungen. OrganizationTest.php ist die Problemdatei.

noahgary@Noahs-MBP:~/Projects/han-api/infrastructure/Testing/Unit$ ls -l
total 80
-rw-r--r--  1 noahgary  staff   2.2K Apr 12 12:59 CartTypeTest.php
-rw-r--r--  1 noahgary  staff   2.4K Apr 12 12:59 ConditionTest.php
-rw-r--r--  1 noahgary  staff   2.4K Apr 12 12:59 CountryTest.php
-rw-r--r--  1 noahgary  staff   2.2K Apr 12 12:59 FeeTypeTest.php
-rw-r--r--  1 noahgary  staff   2.6K Apr 12 12:59 OrderItemStatusTest.php
-rw-r--r--  1 noahgary  staff   2.4K Apr 12 12:59 OrderStatusTest.php
-rw-r--r--  1 noahgary  staff   2.6K Apr 12 17:05 OrganizationTest.php
-rw-r--r--  1 noahgary  staff   2.7K Apr 12 12:59 OrganizationTypeTest.php
-rw-r--r--  1 noahgary  staff   2.5K Apr 12 12:59 QuantityTypeTest.php
-rw-r--r--  1 noahgary  staff   2.3K Apr 12 16:52 UserTest.php

UPDATE: Der Test läuft, wenn ich ihn mit allen anderen laufen lasse. Ich kann es jedoch nicht alleine ausführen, was ca. 5 Minuten für jeden Lauf, während ich versuche, diese Tests zum Laufen zu bringen.

UPDATE-2: Schnelle Problemumgehung ist das Flag „--filter“. Es ermöglicht Ihnen, nur einen Test aus dem Stapel auszuführen.

z.B
vendor/bin/phpunit --filter OrganizationTest

Alle 19 Kommentare

Befinden Sie sich in dem Verzeichnis, das den Testfall enthält? Haben Sie eine Bootstrap.php-Datei, die den Include-Pfad entsprechend einrichtet?

Verwenden Sie "Tab", um die Adresse der Datei zu vervollständigen? Wenn Sie das tun, hören Sie damit auf, schreiben Sie die Adresse manuell :)

Scheint eher eine Dateiberechtigung oder eine andere Art von Fehler zu sein als ein phpunit-Problem. Da ich keine Möglichkeit habe, dies zu reproduzieren, werde ich es schließen. Fühlen Sie sich frei, bei Bedarf wieder zu öffnen

Haftungsausschluss: Das Posten zu diesem geschlossenen Problem, weil ich einem Problem wie meinem am nächsten komme, und es könnte für jemand anderen nützlich sein ...

Für alle, die immer noch mit diesem Problem konfrontiert sind, überprüfen Sie, ob 'safe_mode = On' auf /etc/php5/cli/php.ini.
Das Umschalten auf 'safe_mode = Off' reicht aus.
In meinem Fall habe ich versucht, Dateien auszuführen, die dem aktuellen Benutzer gehören – der nicht root ist – die wiederum PHPUnit-Dateien enthalten würden – die root gehören. Etwas ist nicht erlaubt, wenn der abgesicherte Modus aktiviert ist. Beide Benutzer müssen dieselbe ID haben.

Es hätte mir Stunden des Haareausreißens erspart, wenn ich es früher herausgefunden hätte :/

Thx alfetopito!

Falls jemand von einer Google-Suche hierher kommt, ich hatte das gleiche Problem, aber meine Datei war Bootstrap.php und ich habe das Problem gelöst, indem ich ihren Namen in bootstrap.php (alles Kleinbuchstaben) umbenannte.

Ich hatte das gleiche Problem, es war ein Pfadproblem. Bitte überprüfen Sie, ob Sie Ihr Bash-Terminal auf den richtigen Pfad verweisen.

Durchlief das gleiche Problem, hatte den Pfad zur bootstrap.php in der Datei phpunit.xml nicht korrigiert ...

Ich hatte include_path Abschnitte, die durch Kommas getrennt waren. Unter Windows muss es ein Semikolon sein.

Ich versuche seit 5 Tagen, PHPunit zu installieren!. Jetzt funktioniert es und ich habe diesen Fehler, der möglicherweise der letzte ist, den ich haben werde.

Ich erhalte "Datei filename.php kann nicht geöffnet werden"

bitte helft!!

@pumamammal Ich würde gerne verstehen, warum Sie fünf Tage für die Installation von PHPUnit gebraucht haben, da ich die Dokumentation entsprechend verbessern möchte. Können Sie bitte ein Ticket unter https://github.com/sebastianbergmann/phpunit-documentation/issues/new eröffnen und erklären, wo https://phpunit.de/getting-started.html und https://phpunit.de/manual /current/en/installation.html sind Sie fehlgeschlagen?

Was Ihr cannot open file filename.php -Problem angeht, @pumamammal , verstehen Sie bitte, dass ich nur die vollständige Ausgabe verstehen kann und nicht nur zufällige Ausschnitte, sorry.

Ich habe auch den gleichen Fehler, nachdem ich ein paar andere böse Fehler durchgearbeitet habe. Ich bin auch seit 5 Tagen nonstop dabei. Der abgesicherte Modus ist deaktiviert, die Berechtigungen sind 777. Ich habe keine bootstrap.php-Datei. Ist das notwendig? Wenn ja, gibt es eine Dokumentation, wie man eine erstellt? Ich bin ein unerfahrener Entwickler.

Ich bekomme auch den gleichen Fehler, aber wenn ich keine Datei angebe, läuft sie ohne Probleme.
Ich bin auch ein Neuling.
PHPUnit 5.4.6, installiert über Composer 1.1.2, Windows 10 64 Bit.

Ich bekomme auch den gleichen Fehler und versuche, ihn durch die folgenden Schritte zu lösen

  • erfordern die Datei autoload.php
  • Ich versuche, den Befehl "phpunit myFile.php" zu verwenden und ".php" hinzuzufügen
    und es funktioniert. obwohl ich nichts weiß.
    phpunit 5.5.0, Windows 10 64-Bit, php5.6

Ich habe das Problem gelöst!!
Korrekte Syntax: phpunit tests/PagesTest .
Inspiriert von https://phpunit.de/manual/current/en/organizing-tests.html#organizing -tests.filesystem

Danke schön

In meinem Fall hat es funktioniert, einfach '.php' am Ende des Dateinamens hinzuzufügen.
Anstatt
'phpunit CarTest'
benutzen
'phpunit CarTest.php'.

Ich hoffe, es hilft. :D

Wenn Sie den vollständigen Pfad verwenden, sollte es in Ordnung sein, zum Beispiel, wenn ich unit --bootstrap "C:\xampp\htdocs\general-php\vendor\autoload.php" verwendet habe, wurde das Testproblem behoben

Ich habe immer noch dieses Problem. Ich rufe die PHP-Einheit für die Datei mit und ohne die Erweiterung ".php" auf. Ich referenziere die Datei bootstrap.php in meinem XML korrekt und habe auch versucht, explizit mit "--bootstrap" darauf zu verweisen. Ich kann auch eine andere Testdatei im selben Ordner problemlos ausführen. Eigentlich alle außer dieser. Sie haben alle die gleichen Berechtigungen. OrganizationTest.php ist die Problemdatei.

noahgary@Noahs-MBP:~/Projects/han-api/infrastructure/Testing/Unit$ ls -l
total 80
-rw-r--r--  1 noahgary  staff   2.2K Apr 12 12:59 CartTypeTest.php
-rw-r--r--  1 noahgary  staff   2.4K Apr 12 12:59 ConditionTest.php
-rw-r--r--  1 noahgary  staff   2.4K Apr 12 12:59 CountryTest.php
-rw-r--r--  1 noahgary  staff   2.2K Apr 12 12:59 FeeTypeTest.php
-rw-r--r--  1 noahgary  staff   2.6K Apr 12 12:59 OrderItemStatusTest.php
-rw-r--r--  1 noahgary  staff   2.4K Apr 12 12:59 OrderStatusTest.php
-rw-r--r--  1 noahgary  staff   2.6K Apr 12 17:05 OrganizationTest.php
-rw-r--r--  1 noahgary  staff   2.7K Apr 12 12:59 OrganizationTypeTest.php
-rw-r--r--  1 noahgary  staff   2.5K Apr 12 12:59 QuantityTypeTest.php
-rw-r--r--  1 noahgary  staff   2.3K Apr 12 16:52 UserTest.php

UPDATE: Der Test läuft, wenn ich ihn mit allen anderen laufen lasse. Ich kann es jedoch nicht alleine ausführen, was ca. 5 Minuten für jeden Lauf, während ich versuche, diese Tests zum Laufen zu bringen.

UPDATE-2: Schnelle Problemumgehung ist das Flag „--filter“. Es ermöglicht Ihnen, nur einen Test aus dem Stapel auszuführen.

z.B
vendor/bin/phpunit --filter OrganizationTest

Gleiche für mich. Das einfache Hinzufügen des Flags "--filter" funktionierte. Sonst nicht.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen