异步测试FastAPI应用及部署指南
1. 异步测试FastAPI的WebSocket端点
在FastAPI中,为WebSocket端点编写单元测试与之前的测试有所不同。由于当前HTTPX客户端无法与WebSocket通信,我们可以使用Starlette提供的默认 TestClient 。
以下是一个简单的WebSocket示例:
from fastapi import FastAPI, WebSocket
from starlette.websockets import WebSocketDisconnect
app = FastAPI()
@app.websocket("/ws")
async def websocket_endpoint(websocket: WebSocket):
await websocket.accept()
try:
while True:
data = await websocket.receive_text()
await websocket.send_text(f"Message text was: {data}")
except WebSocketDisconnect:
await websocket.close()
为了测试这个端点,我们需要创建一个新的fixture来实例化测试客户端:
import asyncio
impo
超级会员免费看
订阅专栏 解锁全文
2282

被折叠的 条评论
为什么被折叠?



