如何对Flask websocket服务器进行单元测试(Flask-SocketIO)

whi*_*orn 4 python unit-testing websocket flask flask-socketio

我想知道如何在我的烧瓶websocket服务器上进行单元测试.我的应用程序支持REST API(Flask-restful)和Web Socket(Flask-SocketIO)上的很多接口.所有websocket"发射"都在芹菜过程中进行.我有问题单元测试那些websocket逻辑.

  1. 几个人说,首先我必须分开这个rest-api + websocket应用程序.在单个服务器上运行整个应用程序(逻辑上)是否奇怪?

  2. 如何对websocket代码进行单元测试?

谢谢

Mig*_*uel 5

有些人更喜欢单独的HTTP和WebSocket应用程序,但这不是我盲目推荐的东西.在某些情况下,这样做是有意义的,有些则没有,特别是如果您使用的是Flask-SocketIO,它可以为您提供相当强大的集成.

Flask-SocketIO扩展包括一个测试客户端,在概念上与Flask的测试客户端类似,但意味着与套接字路由一起使用.你看过那个吗?

如果你想使用瓶,芹菜,Socket.IO并有一个很好的一套单元测试一切的应用实例,看看弗莱克:https://github.com/miguelgrinberg/flack.我在PyCon 2016上进行了一个辅导课程,详细介绍了这个应用程序:https://www.youtube.com/watch?v = ttdIIJuPh3SI.

  • 抱歉迟了回应!谢谢您的友善答复。 (2认同)