server_recording_test_guide.md
6.83 KB
服务端录音测试页面功能测试指南
概述
server_recording_test.html 是一个功能完整的服务端录音测试面板,提供了录音控制、设备管理、配置调整、实时监控等多项功能。本指南详细说明各功能的测试方法。
页面访问
访问地址: http://localhost:8010/server-recording-test
前置条件:
- 确保服务端已启动(端口8010)
- 确保
server_recording_api.py已正确注册 - 浏览器支持WebSocket和Web Audio API
核心功能测试
1. 获取状态功能测试
功能描述: 获取当前录音系统的状态信息
测试步骤:
- 点击「获取状态」按钮
- 观察状态面板显示内容
- 检查操作日志区域
预期结果:
录音状态: ⚪ 已停止 / 🔴 录音中
设备索引: -1 (或具体设备编号)
采样率: 16000 Hz
声道数: 1
音量阈值: 0.01
静音超时: 2.0s
语音超时: 10.0s
API调用: GET /api/server-recording/status
故障排查:
- 如显示"获取状态失败",检查服务端是否正常运行
- 检查网络连接和API路由配置
2. 列出设备功能测试
功能描述: 获取系统可用的音频输入设备列表
测试步骤:
- 点击「列出设备」按钮
- 观察设备列表区域显示
- 尝试点击选择不同设备
预期结果:
- 显示所有可用音频设备
- 每个设备显示:设备索引、设备名称、最大输入声道数
- 点击设备后高亮显示,设备索引自动填入配置面板
API调用: GET /api/server-recording/devices
3. 开始录音功能测试
功能描述: 启动服务端录音功能
测试步骤:
- 确保已选择合适的音频设备
- 点击「开始录音」按钮
- 观察录音指示器和状态变化
- 对着麦克风说话测试
预期结果:
- 录音指示器显示红色脉冲动画
- 状态面板显示"🔴 录音中"
- 音频可视化区域显示音量和频率变化
- WebSocket连接正常,实时接收音频数据
API调用: POST /api/server-recording/start
4. 停止录音功能测试
功能描述: 停止当前录音会话
测试步骤:
- 在录音状态下点击「停止录音」按钮
- 观察状态变化
预期结果:
- 录音指示器消失
- 状态面板显示"⚪ 已停止"
- 音频可视化停止更新
API调用: POST /api/server-recording/stop
5. 获取配置功能测试
功能描述: 获取当前录音系统配置参数
测试步骤:
- 点击「获取配置」按钮
- 观察配置面板各字段是否自动填充
预期结果:
- 所有配置字段显示当前服务端配置值
- 设备索引、采样率、声道数等参数正确显示
API调用: GET /api/server-recording/config
6. 更新配置功能测试
功能描述: 修改录音系统配置参数
测试步骤:
- 修改配置面板中的参数值
- 设备索引: 选择有效设备编号
- 采样率: 16000/44100/48000 Hz
- 声道数: 1(单声道)/2(立体声)
- 音量阈值: 0.001-1.0
- 静音超时: 0.1-10.0秒
- 语音超时: 1.0-30.0秒
- 点击「更新配置」按钮
- 再次获取配置验证更新结果
预期结果:
- 配置更新成功提示
- 新配置立即生效
API调用: POST /api/server-recording/config
7. 测试ASR功能
功能描述: 模拟ASR语音识别功能测试
测试步骤:
- 点击「测试ASR」按钮
- 观察ASR结果面板变化
预期结果:
- 依次显示测试短语:
- "你好,这是一个测试"
- "语音识别功能正常"
- "测试完成"
- 每个结果显示置信度(85%-100%)
- 显示识别时间戳
8. 清空日志功能测试
功能描述: 清除操作日志记录
测试步骤:
- 执行几个操作产生日志
- 点击「清空日志」按钮
预期结果:
- 日志面板清空
- 显示"日志已清空"消息
实时监控功能测试
1. WebSocket连接测试
测试方法:
- 打开浏览器开发者工具 → Network → WS
- 观察WebSocket连接状态
- 检查消息收发情况
预期结果:
- 连接URL:
ws://localhost:8010/ws/server-recording - 连接状态: 已连接
- 定期接收状态更新消息
2. 音频可视化测试
测试内容:
- 音量条实时变化
- 频率条动态显示
- 音量百分比数值更新
测试方法:
- 开始录音后对麦克风说话
- 观察可视化效果变化
3. 性能监控测试
监控指标:
- 延迟: API调用响应时间
- 吞吐量: 每秒处理请求数
- 错误率: 失败请求百分比
- 运行时间: 系统运行时长
测试方法:
- 执行多个操作观察指标变化
- 故意触发错误观察错误率统计
4. 质量检测测试
检测项目:
- 信号质量: 绿色(良好)/橙色(警告)/红色(错误)
- 噪音水平: 环境噪音评估
- VAD准确性: 语音活动检测准确度
- ASR准确性: 语音识别准确度
故障排查指南
常见问题及解决方案
-
WebSocket连接失败
- 检查服务端是否启动
- 确认端口8010可访问
- 验证路由
/ws/server-recording已注册
-
获取状态失败
- 检查API路由
/api/server-recording/status - 确认服务端录音模块正常加载
- 检查API路由
-
设备列表为空
- 检查系统音频设备
- 确认麦克风权限已授予
- 验证音频驱动正常
-
录音无响应
- 检查设备索引是否有效
- 确认音频设备未被其他程序占用
- 验证采样率和声道数配置
-
音频可视化无变化
- 检查麦克风是否静音
- 确认音量阈值设置合理
- 验证WebSocket消息接收
测试检查清单
基础功能测试
- 页面正常加载
- WebSocket连接成功
- 获取状态功能正常
- 设备列表获取成功
- 配置获取和更新正常
录音功能测试
- 开始录音成功
- 停止录音成功
- 录音状态正确显示
- 音频可视化正常
高级功能测试
- ASR测试功能正常
- 性能监控数据准确
- 质量检测指标更新
- 日志记录完整
异常处理测试
- 网络断开自动重连
- 错误消息正确显示
- 异常状态恢复正常
性能基准
响应时间标准
- API调用延迟: < 100ms
- WebSocket消息延迟: < 50ms
- 音频可视化更新: < 100ms
资源使用标准
- CPU使用率: < 10%
- 内存使用: < 100MB
- 网络带宽: < 1MB/s
测试环境要求
浏览器支持
- Chrome 80+
- Firefox 75+
- Safari 13+
- Edge 80+
系统要求
- 操作系统: Windows 10+/macOS 10.15+/Linux
- 内存: 4GB+
- 音频设备: 支持录音的麦克风
网络要求
- 本地网络连接
- WebSocket支持
- 端口8010可访问
注意: 本测试指南基于当前版本的测试页面功能,如有功能更新请及时更新本文档。