2017-01-09 9 views
7

Mam aplikację Laravel 5.3.Laravel i PHPUnit: Uzyskanie 500, gdy testowanie jednostkowe "Passport" ogranicza trasę

Wewnątrz mojego pliku api.php znajduje się trasa do opublikowania odpowiedzi w ankiecie.

Route::group(['middleware' => 'auth:api'], function() { Route::post('/poll/answer', 'API\[email protected]'); });

Trasa jest częścią grupy, ograniczonej przez auth:api middleware, stosując silnik Passport laravel użytkownika.

Podczas wywoływania tej trasy z Postmana lub dowolnego innego narzędzia do testowania interfejsów API, otrzymuję 401, co jest ok, ponieważ nie dołączam tokena.

Ale kiedy jednostka testuje to połączenie za pomocą PHPUnit, zwraca 500. Nie mam pojęcia dlaczego.

$this->postJson('api/poll/answer');

jestem prawdopodobnie brakuje instrukcji konfiguracji lub instalacji.

Wszelkie pomysły?

+1

Pierwszą myślą, którą powinieneś zacząć, jest przejrzenie pliku dziennika Laravel. Pomoże Ci to zidentyfikować problem. Jeśli to nie pomoże, powinieneś przynajmniej uwzględnić to w swoim pytaniu. –

+0

Miałeś rację. Wystąpił błąd polegający na tym, że nie uwzględniono klucza aplikacji w pliku '.env.testing'. Dziękuję za wskazanie tego. –

Odpowiedz

3

Wystąpił błąd 500, ponieważ zapomniałem dodać klucz aplikacji do pliku .env.testing.

Zostało to rozwiązane po dodaniu.

Powiązane problemy