首页 > 解决方案 > 如何在 TestCafe 中测试网络摄像头功能?

问题描述

所以基本上我想编写一个涉及用户网络摄像头的 E2E 测试,但我不知道如何解决授予使用网络摄像头或模拟它的权限。它是一款面向学校的远程学习软件,主要功能之一是学生/教师可以为学校项目上传文件和录制视频,然后下载生成的 .webm 文件。目前我无法让浏览器授予 TestCafe 使用网络摄像头的权限。

我试过给 Chrome 这些参数--use-fake-ui-for-media-stream --use-fake-device-for-media-stream

这是我的一些示例代码,在“开始视频录制”之后它应该授予权限:

    .click(Selector('.assignment-title').withText('Testcafe task'))
    .click(Selector('.uppy-DashboardTab-name').withText('Use camera'))
    .click(Selector('button[title="Start video recording"]'))

据我了解,它应该以某种方式实现navigator.mediaDevices.getUserMedia({video: true}),但是如何将其迁移到我的代码中,或者它们是如何结合在一起的?

标签: javascripttestingautomated-testse2e-testingtestcafe

解决方案


testcafe-examples存储库中有一个使用此功能的示例:Mock Camera/Microphone Access。如果该示例对您没有帮助,请使用更多详细信息更新您的问题(包含测试代码的最小项目或公共 URL 会有所帮助)。


推荐阅读