每当我的webdriver测试登录到应用程序时,出现'你想要chrome保存密码'弹出窗口..有没有办法避免这种情况?
请帮忙。
谢谢, 麦克
答案 0 :(得分:19)
您需要配置以下Chrome驱动程序选项:
chromeOptions: {
prefs: {
'credentials_enable_service': false,
'profile': {
'password_manager_enabled': false
}
}
}
答案 1 :(得分:15)
我正在使用Python,这对我有用:
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
chrome_options = Options()
chrome_options.add_experimental_option('prefs', {
'credentials_enable_service': False,
'profile': {
'password_manager_enabled': False
}
})
driver = webdriver.Chrome(chrome_options=chrome_options)
driver.get('https://google.com')
答案 2 :(得分:7)
只需将这些首选项添加到您的Chrome驱动程序选项:
Map<String, Object> prefs = new HashMap<String, Object>();
prefs.put("credentials_enable_service", false);
prefs.put("password_manager_enabled", false);
options.setExperimentalOption("prefs", prefs);
答案 3 :(得分:3)
您还可以在隐身模式下启动chromedriver以停止显示信息栏。请注意,体验将类似于隐身模式。命令将是
如果从命令行运行,请 chrome.exe --incognito
您可以将--incognito
添加到chromeswitch数组,以便从webdriver执行。
答案 4 :(得分:3)
感谢上面的@karanvir Kang评论,我将以下内容添加到我调用量角器时使用的conf.js中。实施例
static std::map<char, MARIEapp::Instruction> MARIEinstruction = {
{ '0', &MARIEapp::JnS },
{ '1', &MARIEapp::Load },
{ '2', &MARIEapp::Store },
{ '3', &MARIEapp::Add },
{ '4', &MARIEapp::Subt },
{ '5', &MARIEapp::Input },
{ '6', &MARIEapp::Output },
{ '7', &MARIEapp::Halt },
{ '8', &MARIEapp::Skipcond },
{ '9', &MARIEapp::Jump },
{ 'A', &MARIEapp::Clear },
{ 'B', &MARIEapp::AddI },
{ 'C', &MARIEapp::JumpI },
{ 'D', &MARIEapp::LoadI },
{ 'E', &MARIEapp::StoreI }
};
void MARIEapp::Execute() {
MARIEinstruction[IR[0]]();
if (DebugMode)ShowRegisters();
}
在我的conf.js
中protractor tests/conf.js --specs /tests/e2e/myspec.spec.js
答案 5 :(得分:1)
为了提供更完整的图片,这里是Selenium网格中Watir的工作配置:
RSpec.configure do |config|
config.before :all do
capabilities = Selenium::WebDriver::Remote::Capabilities.chrome(
chromeOptions: {
prefs: {
'credentials_enable_service': false,
'profile': {
'password_manager_enabled': false
}
}
}
)
@browser = Watir::Browser.new(
:remote,
url: "http://#{ENV.fetch('HUB_HOST')}/wd/hub",
desired_capabilities: capabilities
)
end
config.after :all do
@browser&.close
end
end
在docker-grid-watir的github上查看完整的概念证明。
答案 6 :(得分:0)
我知道这已经很老了,所有问题都已经正确回答了。只是想给我5美分。如果您使用的是Robot Framework,则可以使用波纹管。
open-browser
${chrome_options}= Evaluate sys.modules['selenium.webdriver'].ChromeOptions() sys
${cred_dict}= Create Dictionary credentials_enable_service=${FALSE}
Call Method ${chrome_options} add_experimental_option prefs ${cred_dict}
Create Webdriver Chrome chrome chrome_options=${chrome_options}