我正在使用Java和Selenium编写一个测试自动化框架。我既在本地也使用Browserstack运行测试。
受测试的网站具有使用PC相机扫描文档和面部的功能。
我不想使用PC的网络摄像头来伪造视频流。
有人设法做到这一点吗?
我正在使用以下Chrome选项:
chromeOptions.addArguments("--use-fake-ui-for-media-stream");
chromeOptions.addArguments("--use-fake-device-for-media-stream");
chromeOptions.addArguments("--use-file-for-fake-video-capture=C:/deleteme/bus.y4m");
当我单击通常会打开网络摄像头的按钮时,该网络摄像头没有打开,因此看起来好像在做某事。但是我的视频无法播放。
有人能在类似于我的情况下使用这些工具吗?可以提供更多有关如何做的信息吗?
任何帮助将不胜感激。谢谢。
答案 0 :(得分:0)
我解决了将 mp4 文件转换为 mjpeg 的问题,mjpeg 也是一种可以使用的格式,并且我的 chromedriver 设置与您相同,但使用的是文件的相对路径。
options.addArguments("--use-fake-ui-for-media-stream",
"--use-fake-device-for-media-stream",
"--use-file-for-fake-video-capture=src/test/resources/sample_640x360.mjpeg");
这个线程帮助我到达那里:https://stackoverflow.com/a/52188760/1843429