答案 0 :(得分:0)
您可以检查提示弹出窗口。 为此,您需要导入以下内容,
import org.openqa.selenium.security.UserAndPassword;
import org.openqa.selenium.support.ui.ExpectedConditions;
import org.openqa.selenium.support.ui.WebDriverWait;
首先你需要等到弹出窗口来临。
WebDriverWait wait = new WebDriverWait(driver, 30);
然后检查警报弹出窗口是否存在/是否可见
Alert alertPopUp = wait.until(ExpectedConditions.alertIsPresent());
然后你可以使用selenium web driver的authenticateUsing方法。
alertPopUp.authenticateUsing(new UserAndPassword("your_username", "your_password"));
还有另一种快速检查的方法, 如果您只想验证警报的提示
try {
Alert alert = driver.switchTo().alert();
alert.accept();
} catch (NoAlertPresentException e) {
// Alert not available
e.printStackTrace();
}
答案 1 :(得分:0)
我使用以下代码在IE中工作:
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time
driver = webdriver.Ie()
driver.get("https://scdm.corp.vha.com")
alert = driver.switch_to_alert()
alert.authenticate("username","password")
time.sleep(20)
driver.close()
答案 2 :(得分:0)
最近,我在测试The-Internet基本身份验证弹出窗口时遇到了此问题。解决方法是
driver.get('http://admin:admin@the-internet.herokuapp.com/basic_auth')
在URL本身中添加用户名和密码。我在chrome和firefox中都尝试过。
答案 3 :(得分:0)
您可以执行此操作,而不是使用AutoIt进行身份验证弹出窗口
driver.get(http://Username:Password@SiteURL)