selenium chrome tabcapture未找到请求的设备

时间:2018-02-28 01:07:23

标签: google-chrome selenium google-chrome-extension

我正在尝试使用chrome的tabCapture api来捕获selenium实例中的音频并继续运行"未找到请求的设备"。

以下是chrome扩展后台脚本

的示例
chrome.browserAction.onClicked.addListener(function(tab) {
  console.log("browserAction")
  chrome.tabCapture.capture(
    {video: false, audio: true},
    function(stream) {
      if (!stream) {
        console.error('Error starting tab capture: ' +
                      (chrome.runtime.lastError.message || 'UNKNOWN'));
        return;
      }
      console.log("got stream")
    }
  );
});

在常规chrome实例中使用此后台脚本按预期工作但如果我启动selenium并手动单击browserAction按钮,则会发现chrome运行时错误"找不到请求的设备"在后台控制台中记录。

我尝试过使用和不使用-use-fake-device-for-media-stream和--use-fake-ui-for-media-stream的selenium。

为了防止这看起来毫无意义我之所以这样做,我有一个更大的扩展,我在测试中使用,有些测试需要录制音频和/或视频。如果可能的话,我愿意不必在系统级别记录它,所以我试图使用tabCapture。我可以通过白色列出我的扩展来解决激活tabCapture所需的用户操作。

任何可能的解决方案都非常棒。谢谢!

0 个答案:

没有答案