Wie kann ich eine POST-Anforderung aus einem Winkelmesser test?
Ich würde gerne einen POST-request (JSON-Nutzlast), um eine Datenbank-server, bevor Sie eine Winkelmesser test, um zu injizieren, test-Daten. Wie kann ich das tun, wenn überhaupt möglich?
- Siehe stackoverflow.com/questions/21055960/...
- Gibt es keine andere Möglichkeit? Ich würde nicht dagegen, mit den Knoten http-Modul, aber kann nicht herausfinden, wie man asynchrone Aufrufe von Jasmin-tests.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie einfach eine andere Bibliothek zum ausführen des POST-Anfrage, wenn Sie nur wollen, Ihre Datenbank zu füllen.
Zum Beispiel, können Sie superagent in Ihrem
beforeEach
etwa so:Fand ich einen Weg, es zu tun, mit der Hilfe von Andres D. Das wesentliche, es ist ein Skript ausgeführt wird, im browser per
browser.executeAsyncScript
und injizieren Sie die $http-service dort. Der $http-service wird dann gesagt, um eine POST-Anfrage. Hier das Beispiel von CoffeeScript, wie es gemacht wird:http://your-angular-app.com
), die müssen geladen Eckig.Ist es möglich, einige async-setup-code in Ihre onPrepare Funktion Ihres Winkelmesser config. Sie müssen explizit sagen, Winkelmesser zu warten, bis Ihr Antrag fertig zu stellen. Diese kann getan werden, mit fließen.warten (), die spielt schön mit Versprechungen.
** Als Winkelmesser 1.1.0 auf bereiten Sie zurückkehren können, ein Versprechen, so dass der Einsatz von
flow
ausdrücklich zu warten auf die Verheißung zu beheben, ist unnötig.Finden Sie unter: https://github.com/angular/protractor/blob/master/CHANGELOG.md
it
oderbeforeEach
Funktion auch; ich glaube nicht, dass es eine Beschränkung aufonPrepare
.await
erwarten ein Versprechen? Winkelmesser können Sie, um zurückzukehren ein Versprechen von einemonPrepare
- Funktion, so dass Sie konnte nur tunreturn setup_data({data: 'test'});
.Anderen Weise zu tun, POST-Anforderung von Winkelmesser ist mit "http"