Cypress能否录制被测页面音频并同步至测试录制视频?
Cypress测试视频包含音频的实现方法
可以实现,但Cypress默认的测试视频录制不包含音频,需要额外配置或借助工具来捕获音频并合并到测试视频中,以下分场景说明:
原生audio标签场景
- 可以通过Cypress获取音频源,再用视频处理工具合并音频和测试视频:
- 测试中提取音频URL并保存:
cy.get('audio').invoke('attr', 'src').then(audioUrl => { cy.writeFile('cypress/fixtures/audio-url.txt', audioUrl); }); - 测试结束后用FFmpeg合并(需提前安装FFmpeg):
ffmpeg -i cypress/videos/your-test-spec.mp4 -i $(cat cypress/fixtures/audio-url.txt) -c:v copy -c:a aac final-video-with-audio.mp4
- 测试中提取音频URL并保存:
YouTube视频场景
- YouTube的音频受播放器和版权限制,无法通过DOM直接获取源文件,此时需要用系统级音频捕获工具:
- Windows:使用Xbox Game Bar,同时录制Cypress测试窗口和系统音频
- Mac:用QuickTime Player选择“新建屏幕录制”,勾选录制音频选项
- 跨平台:用OBS Studio配置场景捕获Cypress窗口和系统音频
- 这种方式无法完全通过Cypress代码自动化,适合需要验证音频播放的手动或半自动化测试场景
注意事项
- Cypress Cloud目前不支持直接录制音频,需本地合并视频和音频后再上传
内容的提问来源于stack exchange,提问作者Mino k
相关产品推荐
相关产品推荐

