Ime*_*HOK 50 java authentication selenium popup selenium-webdriver
我正在尝试使用以下代码处理身份验证弹出窗口:
FirefoxProfile profile = new FirefoxProfile();
profile.setPreference("network.http.phishy-userpass-length", 255);
profile.setPreference("network.automatic-ntlm-auth.trusted-uris", "x.x.x.x");
driver = new FirefoxDriver(profile);
baseUrl="http://" + login + ":" + password + "@" + url;
driver.get(baseUrl + "/");
Run Code Online (Sandbox Code Playgroud)
当我执行测试时,页面显示身份验证弹出窗口,并且仍然加载直到我单击取消按钮.那一刻,我可以访问下一页,这意味着身份验证成功但仍然始终显示身份验证弹出窗口
Pra*_*ams 40
警报方法,authenticateUsing()让您跳过Http基本身份验证框.
WebDriverWait wait = new WebDriverWait(driver, 10);
Alert alert = wait.until(ExpectedConditions.alertIsPresent());
alert.authenticateUsing(new UserAndPassword(username, password));
Run Code Online (Sandbox Code Playgroud)
截至Selenium 3.4,它仍处于测试阶段
现在只执行实现
InternetExplorerDriver
小智 32
不要使用firefox配置文件并尝试下面的代码:
driver.get("http://UserName:Password@Example.com");
Run Code Online (Sandbox Code Playgroud)
如果您在IE浏览器中实现它,则需要执行某些操作.
如果您的身份验证服务器需要域名为"domainuser"的域名,则需要/在网址中添加双斜杠:
//localdomain\user:password@example.com
Run Code Online (Sandbox Code Playgroud)
小智 7
我在申请中多次遇到这个问题.
我们通常可以通过以下两种方法来处理这个问题.
在url中传递用户名和密码
您可以在打开URL之前创建AutoIT脚本并调用脚本.
请查看以下文章,其中我提到了两种方法:
在Selenium Webdriver中处理身份验证/登录窗口
尝试以下解决方案,如有任何问题,请告诉我:
driver.get('https://example.com/')
driver.switchTo().alert().sendKeys("username" + Keys.TAB + "password");
driver.switchTo().alert().accept();
Run Code Online (Sandbox Code Playgroud)
这对我来说很好
| 归档时间: |
|
| 查看次数: |
135604 次 |
| 最近记录: |