2016-07-07 38 views
3

Einheitentest Ich frage mich, wie kann ich auf meinem Kolben Websocket Server unittest. Meine Anwendung unterstützt ziemlich viele Schnittstellen auf REST API (Flask-restful) und Web Socket (Flask-SocketIO). Alle websocket "emittieren" sind auf Sellerie Prozess weiter. Ich habe Probleme, diese Websocket-Logik zu testen.Wie Flask-SocketIO Flask-SocketIO

  1. Mehrere Leute sagten, zuerst muss ich diese Rest-api + Websocket-Anwendung trennen. Ist es komisch, ganze Anwendungen auf einem einzigen Server zu betreiben (logisch)?

  2. Wie wird der Websocket-Code getestet?

Danke

Antwort

4

Einige Leute bevorzugen getrennte Apps für HTTP und WebSocket, aber das ist nicht etwas, das ich blind empfehlen würde. Es gibt Fälle, in denen dies sinnvoll ist, andere nicht, besonders wenn Sie Flask-SocketIO verwenden, was Ihnen eine ziemlich starke Integration ermöglicht.

Die Erweiterung Flask-SocketIO enthält einen Testclient, der dem Flask-Testclient ähnelt, aber für Socket-Routen gedacht ist. Hast du das angeschaut?

Wenn Sie eine Beispielanwendung möchten, die Flask, Sellerie, Socket.IO verwendet und eine Reihe von Komponententests für alles bietet, sehen Sie sich Flack an: https://github.com/miguelgrinberg/flack. Ich habe auf der PyCon 2016 eine Tutorial-Session gegeben, in der ich diese Applikation im Detail behandle: https://www.youtube.com/watch?v=tdIIJuPh3SI.

+1

Entschuldigung für die späte Antwort! Danke für deine freundliche Antwort. – whiteUnicorn