SSE 流式接口测试用例清单

发布时间:2026/8/18 19:37:19

SSE 流式接口测试用例清单
SSE 流式接口测试用例清单适用场景大模型流式输出、实时消息推送、数据增量推送等 SSE 接口可直接导入测试用例管理系统执行一、功能测试14 个用例ID测试分类用例名称前置条件测试步骤预期结果优先级SSE-FUN-001协议合规SSE 响应头校验接口可正常访问1. 发起 GET 请求Header 携带Accept: text/event-stream2. 抓包查看响应头1. 包含Content-Type: text/event-stream2. 包含Cache-Control: no-cache3. 包含Connection: keep-alive4. 无Content-Length头5.Transfer-Encoding: chunkedP0SSE-FUN-002协议合规标准事件格式校验接口可正常推送数据1. 发起流式请求2. 逐行解析返回内容1. 每条事件以空行分隔2. 支持data字段多行拼接3.:开头的注释行不触发业务回调4. 字段名与冒号间无多余空格P0SSE-FUN-003数据正确性业务数据完整一致性存在非流式对照接口1. 使用相同参数分别调用流式与非流式接口2. 将所有data块按顺序拼接后与非流式结果对比拼接后的完整内容与非流式接口返回内容完全一致无缺字、无多字、无乱序P0SSE-FUN-004数据正确性数据块顺序性校验接口持续推送多块数据1. 为每个数据块打上接收时间戳与序号2. 全量接收完成后校验顺序数据块严格按服务端发送顺序到达无乱序、无重复、无丢块P0SSE-FUN-005数据正确性结束标识识别服务端推送完成有明确结束信号1. 发起请求并监听流式数据2. 等待推送结束1. 推送完成后服务端发送约定结束事件如event: done/data: [DONE]2. 客户端可正确识别结束状态并关闭连接P0SSE-FUN-006事件机制默认 message 事件触发接口推送默认事件1. 监听message事件2. 服务端推送无event字段的数据所有未指定event字段的数据块均触发message事件回调P1SSE-FUN-007事件机制自定义事件分类触发接口支持多种自定义事件1. 分别监听event: delta、event: error、event: done等自定义事件2. 服务端依次推送不同类型事件各自定义事件被对应监听器正确接收互不串扰P1SSE-FUN-008事件机制事件 ID 递增校验接口推送id字段1. 记录每条事件的id值2. 全量接收完成后校验id全局唯一且单调递增无跳号、无重复P1SSE-FUN-009重连机制retry 重连间隔生效服务端返回retry字段1. 接收服务端推送的retry: 50002. 手动断开连接3. 记录重连发生时间客户端断开后按 5000ms 间隔自动发起重连误差不超过 ±500msP2SSE-FUN-010重连机制断点续传 Last-Event-ID接口支持按 ID 续传1. 正常接收至第 N 条事件后断开连接2. 重连时 Header 携带Last-Event-ID: {第N条ID}3. 接收续传数据1. 服务端从第 N1 条开始推送2. 不重复发送已推送过的事件3. 数据连续无丢失P1SSE-FUN-011心跳保活空闲心跳帧推送长连接空闲期服务端保活1. 建立连接后无业务数据推送2. 持续监听 60s 以上1. 空闲期间服务端定时推送注释心跳帧: ping2. 连接不被网关超时断开3. 心跳帧不触发业务回调P1SSE-FUN-012参数校验正常参数返回正确数据接口支持入参1. 传入合法参数发起请求2. 校验返回内容返回数据与参数逻辑匹配内容正确P0SSE-FUN-013参数校验非法参数错误事件接口有异常处理机制1. 传入非法/缺失必选参数2. 监听错误事件1. 返回event: error或明确错误码2. 错误信息可读连接正常关闭3. 不抛出 500 异常断连P1SSE-FUN-014权限校验未授权访问拦截接口需鉴权1. 不携带 Token 或携带无效 Token 发起请求1. 返回 401/403 状态码2. 不建立流式连接3. 错误信息规范P0二、性能测试10 个用例ID测试分类用例名称前置条件测试步骤预期结果优先级SSE-PER-001基线性能单并发基线性能测试服务空载1. 单线程发起 10 次请求2. 统计 TTFB、TTFT、TPOT、吞吐量、总耗时3. 输出平均值与 P50/P90/P95输出完整性能指标基线数据作为后续对比基准P0SSE-PER-002基线性能TTFB 首字节时延服务空载1. 单并发请求2. 记录请求发出到首个字节到达时间TTFB 应满足业务阈值参考阈值 1000msP0SSE-PER-003基线性能TTFT 首 Token 时延服务空载1. 单并发请求2. 记录请求发出到首个业务 data 块到达时间TTFT 应满足业务阈值参考阈值 3000msP0SSE-PER-004基线性能TPOT 单 Token 生成耗时服务空载1. 单并发请求2. 统计相邻数据块间隔的平均值TPOT 应满足业务阈值参考阈值 300ms/tokenP0SSE-PER-005基线性能吞吐量指标服务空载1. 单并发请求2. 计算总 Token 数 / 总耗时吞吐量满足业务阈值参考阈值 3 tokens/sP0SSE-PER-006并发压测梯度并发性能衰减压测环境就绪1. 分别以 1/2/5/10/20/50 并发各压测 5 分钟2. 每档记录核心指标变化曲线1. 输出并发-性能衰减曲线2. 定位性能拐点并发数3. 找出满足业务 SLA 的最大安全并发P0SSE-PER-007并发压测长连接数承载能力服务端资源充足1. 逐步建立 100/500/1000 条空闲长连接2. 维持 10 分钟3. 观测服务端资源与连接存活率1. 连接全部保活无被动断开2. 内存、CPU 无异常暴涨3. 新连接建立耗时无明显增加P1SSE-PER-008负载影响不同输入长度性能对比支持可变长度输入1. 分别使用短/中/长三种 Prompt/输入长度2. 单并发下各跑 10 次3. 对比 TTFT、TPOT 变化输出输入长度对各指标的影响系数验证 TTFT 随输入长度线性增长是否合理P1SSE-PER-009负载影响不同输出长度性能对比支持可变长度输出1. 分别控制短/中/长三种预期输出长度2. 单并发下各跑 10 次3. 对比总耗时、吞吐量变化输出长度对总耗时呈线性关系TPOT 基本稳定P1SSE-PER-010稳定性压测长时间压测资源泄漏压测环境就绪1. 以安全并发数持续压测 2 小时以上2. 每 10 分钟采样一次性能指标3. 监控服务端内存、句柄、CPU1. 性能指标无持续劣化趋势2. 内存无持续上涨无泄漏3. 成功率保持 100%4. 无连接异常断开P1三、异常与可靠性测试11 个用例ID测试分类用例名称前置条件测试步骤预期结果优先级SSE-ERR-001网络异常弱网高延迟场景可模拟弱网1. 模拟 200ms 延迟、5% 丢包2. 发起流式请求并完整接收1. 数据完整无丢失2. 推送时延增加但不报错3. 连接不中断P1SSE-ERR-002网络异常推送中途断网恢复可模拟断网1. 推送至中途断开网络2. 等待 30s 后恢复网络3. 观察客户端行为1. 客户端按 retry 间隔自动重连2. 携带 Last-Event-ID 实现断点续传3. 数据无重复、无丢失P1SSE-ERR-003网络异常低带宽大数据量可限制带宽1. 限制带宽至 512kbps2. 推送大数据量响应1. 连接保持不超时2. 数据完整接收无截断3. 不触发客户端超时P2SSE-ERR-004服务端异常服务端正常关闭连接服务端可控1. 推送过程中服务端主动正常关闭连接2. 观察客户端状态1. 客户端识别连接关闭2. 不抛出异常错误3. 已接收数据完整P1SSE-ERR-005服务端异常服务端异常崩溃重启服务端可控1. 推送过程中强制杀掉服务进程2. 服务重启后观察客户端1. 客户端检测到断连并自动重连2. 服务恢复后可正常续传3. 不出现数据错乱P2SSE-ERR-006客户端异常客户端主动取消请求客户端可控1. 推送中途客户端主动断开连接2. 观察服务端资源释放情况1. 服务端及时停止生成数据2. 连接、线程、算力资源立即释放3. 无资源泄漏P1SSE-ERR-007客户端异常重连风暴场景可批量控制客户端1. 100 个连接同时断开2. 全部同时自动重连3. 观察服务端状态1. 服务端不崩溃、不 OOM2. 重连请求逐步处理成功3. 成功率 100%P2SSE-ERR-008超时机制网关超时保活验证经过 Nginx/网关1. 建立连接后暂停业务数据推送2. 持续超过网关超时时间通常 60s1. 心跳帧正常发送2. 连接不被网关断开3. 恢复推送后数据正常P1SSE-ERR-009超时机制服务端读写超时服务端配置超时1. 客户端建立连接后不读取数据2. 等待超过服务端超时时间服务端主动关闭连接释放资源不产生挂起连接P2SSE-ERR-010边界场景超大单块数据推送支持构造大数据块1. 构造单条 1MB 的 data 块2. 客户端接收并解析1. 数据完整接收无截断2. 客户端解析正常不内存溢出3. 事件边界识别正确P2SSE-ERR-011边界场景空数据/零长度事件支持构造空数据1. 服务端推送空 data 事件2. 客户端接收解析1. 空事件可被正确识别2. 不触发解析异常3. 不影响后续事件接收P2

相关新闻

从MDK到Makefile:嵌入式工程构建自动化与依赖管理实战

从MDK到Makefile:嵌入式工程构建自动化与依赖管理实战

2026/8/18 19:37:19

1. 从IDE依赖到构建自主:为什么我们需要用Makefile管理MDK工程 如果你是一名嵌入式开发者,尤其是长期使用Keil MDK(Microcontroller Development Kit)的朋友,大概率已经习惯了那个经典的蓝色界面。点一下“Build”按钮…

串口助手不只是收发 HEX:PcanWork 交互终端、多行粘贴与长日志完整指南

串口助手不只是收发 HEX:PcanWork 交互终端、多行粘贴与长日志完整指南

2026/8/18 19:37:19

PcanWork Serial Tool 是面向嵌入式设备、Linux 控制台、Bootloader、AT 指令和串口协议联调的 Windows 工具。它把“普通串口调试”和“交互终端”设计成两种清晰的工作模式,当前版本为 v0.1.37。 一、为什么普通串口助手还不够 传统串口助手适合一问一答和 HEX 报…

汽车无钥匙进入与启动系统原理详解:从射频技术到安全防范

汽车无钥匙进入与启动系统原理详解:从射频技术到安全防范

2026/8/18 19:37:19

1. 从“按一下”到“踩一下”:一个被忽略的体验分水岭如果你开的是近十年出厂的汽车,大概率已经习惯了这样的场景:走到车边,拉开车门,坐进驾驶位,踩下刹车,按一下启动按钮,车辆就安静…

管理学经典书籍推荐:管理的终点不是流程,而是经营成果

管理学经典书籍推荐:管理的终点不是流程,而是经营成果

2026/8/18 21:37:24

很多人刚走上管理岗位时,都会把注意力放在人身上。 有人担心团队不好带,于是花大量时间研究沟通方式;有人害怕员工缺乏积极性,不断寻找激励办法;还有人认为管理就是监督,把更多精力投入到检查和考核之中。…

GPS、基站、WiFi与AGPS定位技术原理与应用场景全解析

GPS、基站、WiFi与AGPS定位技术原理与应用场景全解析

2026/8/18 21:37:24

1. 定位技术全景:从户外到室内的无缝衔接 我们每天都在使用手机地图导航、叫车、分享位置,这些便利的背后,是多种定位技术协同工作的结果。很多人可能只知道GPS,但实际上,现代智能设备的精准定位,是GPS、基…

迈凯伦GT跑车:重新定义豪华旅行车的性能与实用平衡

迈凯伦GT跑车:重新定义豪华旅行车的性能与实用平衡

2026/8/18 21:37:24

1. 项目概述:一次对“GT”定义的颠覆性重塑 当“迈凯伦”和“GT跑车”这两个词组合在一起时,熟悉这个英国超跑品牌历史的人,第一反应往往是困惑,甚至是质疑。因为在2019年之前,迈凯伦的产品序列里,从入门级…

蓝速 K10 信创平板外勤验收实测:为何普通国产平板无法达标

蓝速 K10 信创平板外勤验收实测:为何普通国产平板无法达标

2026/8/18 21:37:24

在政企数字化推进的深水区,很多项目负责人都遇到过这样的尴尬局面:办公室里的国产化终端运行流畅,一旦设备走出空调房,到了野外巡检、工地执法或能源勘探现场,就频繁出现死机、掉线甚至数据丢失的情况。这并非单一的软…

经典管理学书籍推荐:从碎片化管理知识,到完整理解企业管理

经典管理学书籍推荐:从碎片化管理知识,到完整理解企业管理

2026/8/18 21:37:24

管理学发展到今天,各种理论、模型和方法层出不穷。走进书店,管理类书架往往占据很大的位置,主题也越来越细,从团队建设、领导力到执行、绩效、战略,几乎每一个管理环节都有对应的图书。 书越来越多,很多管…

177.ABAP AT END OF 分组汇总实战教程

177.ABAP AT END OF 分组汇总实战教程

2026/8/18 21:27:24

摘要 SAP系统是企业级ERP的绝对霸主,而ABAP作为其原生开发语言,是深入SAP生态绕不开的核心技能。本文不堆砌概念,直接从应用场景切入,剖析ABAP的内存管理、内表操作与数据库交互底层原理,并给出一段可直接运行的生产级代码,涵盖数据获取、内表处理、ALV展示与错误处理全…

【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码

【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码

2026/8/17 1:28:42

✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和…

【双层规划,节点出清价,绿证交易,CVaR方法】两级电力市场环境下计及风险的省间交易商最优购电模型附Matlab代码

【双层规划,节点出清价,绿证交易,CVaR方法】两级电力市场环境下计及风险的省间交易商最优购电模型附Matlab代码

2026/8/18 1:03:22

✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和…

隐式mpc+自适应mpc+时变mpc,线性时变模型预测控制附Simulink仿真

隐式mpc+自适应mpc+时变mpc,线性时变模型预测控制附Simulink仿真

2026/8/17 8:40:51

✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和…

多智能体大模型辩论中的立场收敛:从伪共识到理性说服的评估方法

多智能体大模型辩论中的立场收敛:从伪共识到理性说服的评估方法

2026/8/18 0:06:29

1. 从一场“假辩论”说起:为什么大模型辩论会走向“伪共识”?最近在折腾多智能体大语言模型(Multi-Agent LLM)的辩论实验,发现一个挺有意思的现象。我让几个基于GPT-4的智能体就一个争议性话题(比如“远程办…

Frida动态代码插桩框架:从原理到实战的移动安全与逆向工程指南

Frida动态代码插桩框架:从原理到实战的移动安全与逆向工程指南

2026/8/18 0:06:29

1. 从“黑盒”到“白盒”:为什么我们需要Frida在移动安全、逆向工程甚至是一些自动化测试的场景里,我们经常会遇到一个让人头疼的问题:面对一个编译好的、没有源代码的应用程序,我们如何知道它在运行时内部发生了什么?…

ECharts饼图中心文字配置指南:从label与title区别到动态交互实现

ECharts饼图中心文字配置指南:从label与title区别到动态交互实现

2026/8/18 0:06:29

1. 从“空心”到“有魂”:为什么要在饼图中间加文字?如果你用过ECharts画饼图,大概率会注意到一个现象:默认生成的饼图中间是空心的。这个设计本身没问题,它清晰地展示了各个扇区的占比关系。但在很多实际的业务场景里…

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

2026/8/17 12:00:53

一天写完毕业论文在2026年已不再是天方夜谭。2026年最炸裂、实测能大幅提速的AI论文写作工具,覆盖选题构思、文献整理、内容生成、格式排版等核心场景,真正帮你高效搞定论文难题。 一、全流程王者:一站式搞定论文全链路(一天定稿首…

导师推荐!2026最新AI论文工具测评与实用推荐

导师推荐!2026最新AI论文工具测评与实用推荐

2026/8/15 10:10:27

2026年真正好用的AI论文工具,核心看生成的论文质量、低AI味、格式正确、学术适配四大指标。综合实测,千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队,覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。 一、…

告别游戏崩溃:XCOM 2模组管理器的智能革命

告别游戏崩溃:XCOM 2模组管理器的智能革命

2026/8/18 12:20:24

告别游戏崩溃:XCOM 2模组管理器的智能革命 【免费下载链接】xcom2-launcher The Alternative Mod Launcher (AML) is a replacement for the default game launchers from XCOM 2 and XCOM Chimera Squad. 项目地址: https://gitcode.com/gh_mirrors/xc/xcom2-lau…