2016-07-07 100 views
3

我想知道如何對我的flask websocket服務器進行單元測試。 我的應用程序在REST API(Flask-restful)和Web Socket(Flask-SocketIO)上支持相當多的接口。所有的websocket「發出」都是在芹菜過程中進行的。我有單元測試這些websocket邏輯的問題。如何單元測試Flask websocket服務器(Flask-SocketIO)

  1. 幾個人說,首先我必須分離這個rest-api + websocket應用程序。在單個服務器上運行整個應用程序(邏輯上)是否奇怪?

  2. 如何對websocket代碼進行單元測試?

謝謝

回答

4

有些人喜歡HTTP和WebSocket的獨立應用程序,但是這不是我一味推薦。在某些情況下,這樣做是有道理的,有些則不這樣做,特別是如果您使用的是Flask-SocketIO,它可以提供相當強大的集成。

Flask-SocketIO擴展包含一個測試客戶端,其概念與Flask的測試客戶端類似,但意在與套接字路由一起使用。你看過嗎?

如果你想要一個使用Flask,Celery,Socket.IO的示例應用程序,並且對每件事都有一套很好的單元測試,請看Flack:https://github.com/miguelgrinberg/flack。我在PyCon 2016上做了一個教程會議,詳細介紹了這個應用程序:https://www.youtube.com/watch?v=tdIIJuPh3SI

+1

對不起,延遲迴復!謝謝你的回答。 – whiteUnicorn