Laravel Funktionstest AJAX-Kontrolle

8

In Laravel 5.4 kann ich sehen, dass es Methoden gibt wie:

%Vor%

Aber ich sehe diese in Laravel 5.3 nicht.

Wir haben zwei verkettete Auswahlfelder, in denen die zweiten Auswahlfeldwerte durch Ajax geladen werden, basierend auf der Auswahl aus dem ersten Auswahlfeld. Das Problem ist, dass Laravel beim Test nicht darauf wartet, dass der zweite selectbox / ajax geladen wird, was den Test fehlschlagen lässt, weil er keinen Wert aus dem zweiten Auswahlfeld auswählen konnte.

%Vor%

Ich habe auch versucht, sleep() zu benutzen, aber es hat nicht funktioniert.

Haben Sie eine Idee, wie Sie ein solches Szenario in 5.3 bitte testen? Danke

    
dev02 14.04.2017, 06:27
quelle

2 Antworten

8

Standardmäßig unterstützt Laravel 5.3 diese Funktion nicht. Da sie Ajax Testing in Laravel 5.4 mit Dusk eingeführt haben.

Überprüfen Sie diesen Beitrag: Ссылка

Wir haben jedoch Glück.

Blick auf den Komponisten.json der Dämmerung. Sie können es in Laravel 5.3 verwenden, da seine Abhängigkeit "illuminate/support" : "~5.3" ist, was von Laravel 5.3 erfüllt wird.

Alles was Sie tun müssen ist: composer require laravel/dusk

Überprüfen Sie die composer.json hier: Ссылка

Bearbeiten:

Es gab ein Problem mit der Abhängigkeit. Ich habe ein neues Paket erstellt, das das Abhängigkeitsproblem löst. Ich habe alle Testfälle ausgeführt. Es hat mir keinen Fehler gemacht.

Sie können dieses Paket mit dem folgenden Befehl verwenden: composer require pankitgami/dusk

Überprüfen Sie hier: Ссылка

    
Pankit Gami 17.04.2017, 10:21
quelle
1

seeJsonEquals wird für die Überprüfung des genauen JSON-Abgleichs verwendet

%Vor%     
swaroop suthar 18.04.2017 07:40
quelle

Tags und Links