我想使用Selenium将用户名和密码传递给URL 我尝试了以下逻辑
1)在网址中传递用户名和密码,即{} 3 {} 2)使用alert和setAuthenticationCredentials
在第一种方法中,网址没有被重定向。浏览器已启动,就是这样。
在第二种方法中,显示登录弹出窗口。但它没有输入用户名和密码。当我在调试模式下运行脚本时,代码没有到达driver.switchto()。alert();
在gotoURL中只有它的震撼。
我在Windows 10中使用IE11
http://Uname:pwd@url.com
答案 0 :(得分:0)
参考您的第一个选项,即在URL中传递凭据,此博客文章提供了前进的方法:
https://blog.ham1.co.uk/2016/03/05/selenium-allow-basic-auth-in-ie11/
您需要在注册表中创建以下节点:
HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Internet Explorer \ Main \ FeatureControl \ FEATURE_HTTP_USERNAME_PASSWORD_DISABLE HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \微软\互联网 资源管理器\ MAIN \ FeatureControl \ FEATURE_HTTP_USERNAME_PASSWORD_DISABLE HKEY_CURRENT_USER \ SOFTWARE \微软\互联网 资源管理器\主\ FeatureControl \ FEATURE_HTTP_USERNAME_PASSWORD_DISABLE
为“iexplore.exe”和“explorer.exe”创建密钥
我还发现Webdriver不再支持基本身份验证方法,它根本不适用于Java。它仍适用于.net,但仅适用于Win7-8.1。