我一直试图通过使用
让量角器接受浏览器本地相机browser.actions().sendKeys(protractor.Key.TAB, protractor.Key.TAB, protractor.Key.ENTER).perform();
这会正确选中“接受”按钮,但输入键永远不会被提交。我也尝试过使用
browser.actions().sendKeys(protractor.Key.TAB, protractor.Key.TAB).perform();
browser.actions().sendKeys(protractor.Key.ENTER).perform();
认为可能需要进入它自己的路线。
有关于此的任何想法吗?
答案 0 :(得分:5)
你可以尝试使用switchTo()
来操纵问题弹出窗口,但我担心这不会起作用,因为这是一个原生的chrome弹出窗口而不是javascript警报:
browser.driver.switchTo().alert().accept();
以下是选项(尚未测试):
使用disable-web-security
argument中设置的chromeOptions
启动Chrome:
chromeOptions: {
args: [
'disable-web-security'
]
}
使用use-fake-ui-for-media-stream
argument启动Chrome:
chromeOptions: {
args: [
'use-fake-ui-for-media-stream'
]
}
将您的网站添加到VideoCaptureAllowedUrls
list(取自here)
chromeOptions: {
prefs: {
'VideoCaptureAllowedUrls': ['http://my_url']
}
}
另外,您是否尝试过按TAB
3次?
browser.actions().sendKeys(protractor.Key.TAB, protractor.Key.TAB, protractor.Key.TAB, protractor.Key.ENTER).perform();
答案 1 :(得分:0)
试试这个:
capabilities: {
'browserName': 'chrome',
'chromeOptions': {
args: ['--use-fake-device-for-media-stream','--use-fake-ui-for-media-stream'],
}
},