单元测试不打真实网络:真接口慢且不稳定,还会污染外部数据,失败原因也说不清。
Python 用 requests_mock 或 responses 把目标 URL 拦下返回固定响应,顺便断言调用参数对不对。
Node 用 nock,前端还能用 msw 在浏览器里复用同一套 handler。
重点是必须补上超时和 5xx 这两类分支的用例,这恰恰是线上最容易炸的地方。真实连通性只保留少量集成测试。
# Python
import requests_mock
with requests_mock.Mocker() as m:
m.get("https://api.example.com/user/1", json={"id": 1}, status_code=200)
assert fetch_user(1)["id"] == 1
// Node
nock("https://api.example.com").get("/user/1").reply(500)
await expect(fetchUser(1)).rejects.toThrow()
THE END






暂无评论内容