Dieser Artikel führt Sie hauptsächlich in den Behebungsprozess des old()-Funktionsfehlers in phpUnit beim Testen von Laravel-Einheiten ein. Er bietet einen gewissen Referenz-Lernwert für jedermann wird benötigt Freunde, bitte folgen Sie dem Herausgeber, um gemeinsam zu lernen.
Vorwort
Ich habe kürzlich Laravel-Unit-Tests durchgeführt und bin auf ein Problem gestoßen:
Bei der Verwendung von old()
An Beim Ausführen der Funktion wird ein Fehler gemeldet. Beim normalen URL-Zugriff wird jedoch ein Fehler gemeldet.
Fehlergrund:
exception 'RuntimeException' with message 'Session store not set on request.' in /Users/lei/Sites/goodstyle/vendor/laravel/framework/src/Illuminate/Http/Request.php:870
Offensichtlich ist dies der Grund dafür Die Sitzung wurde nicht geöffnet, aber phpUnit konfiguriert die Umgebung durch Laravel selbst, daher war ich sehr verwirrt, also habe ich den Quellcode überprüft
Lösungsprozess
Sitzung öffnen (App/HTTP/Kerner)
Natürlich habe ich die Sitzung geöffnet, aber ich habe den Code von gefunden Ich habe meinen Unit-Test durchgeführt und festgestellt, dass ich dieses Code-Snippet geöffnet habe.
Ignorieren Sie die Einschränkungen der Middleware
Da dieser Code dies verhindert Als ich meine Sitzung eröffnete, war ich schlau und wurde getäuscht. Ich wollte diese Methode ursprünglich verwenden, ohne Middleware zu schreiben, aber ich blieb selbst darin hängen. Dann ging ich zu diesem Code, schrieb die Logik neu und sie lief normal .
Zusammenfassung
Das obige ist der detaillierte Inhalt vonLösung für den von der old()-Funktion in Laravels phpUnit gemeldeten Fehler. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!