[英]How to intercept video file in Cypress?
我正在尝试使用 cy.intercept 模拟 static 视频
cy.intercept('/video.webm', { fixture: 'videos/video.webm' });
这似乎行不通,它仍然返回实际视频而不是固定视频。 我也试过像这样指定编码binary
和null
cy.intercept('/video.webm', { fixture: 'videos/video.webm,null' });
cy.intercept('/video.webm', { fixture: 'videos/video.webm,binary' });
但是null
给我一个错误 - 值“null”对于选项“encoding”无效
对于二进制文件,它似乎返回一个空的黑色视频
那我做错了什么?
我挑不出毛病,这个例子有效——播放我在cypress/fixtures
中的 bunny vid。
最好的猜测是你有错误的夹具路径。
cy.visit('https://www.webmfiles.org/demo-files/');
cy.intercept('/elephants-dream.webm', { fixture: 'big-buck-bunny_trailer.webm,null' })
cy.get('a[href="https://dl8.webmfiles.org/elephants-dream.webm"]')
.click()
所以我想通了,不知道为什么,但这对我有用。
cy.intercept('/video.webm', (req) => {
req.continue((res) => {
res.send({ fixture:'videos/video.webm' });
});
});
PS: @TesterDick的这个答案实际上有效https://stackoverflow.com/a/73887996/12937539 。 但是当我在视频标签中而不是在链接中使用视频作为源时,这不起作用。 也许带有source
的video
标签案例
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.