好的,所以我知道关于webdriver警报的问题还有很多其他答案,我已经仔细研究了它们,但是我认为我的情况有所不同。当我单击“提交”按钮时,我已经切换到3帧,然后收到警报,因此我尝试切换回默认内容,然后使用try
catch和alert.accept单击警报,但仍然没有单击警报。代码如下。提前感谢你的帮助 :)
public class BookAHoliday {
public FirstPage completeHolidayFormAndSubmit(String firstDate, String lastDate) {
sleepsAreBad();
driver.switchTo().frame("ContainerFrame");
driver.switchTo().frame("iframeCommunityContainer");
driver.switchTo().frame("FORMCONTAINER");
fluentWait(By.id("StartDate_txtInput"));
firstDayOfLeaveInput.sendKeys(firstDate);
sleepsAreBad();
lastDayofLeaveInput.sendKeys(lastDate);
try {
submitButton.click();
} catch (UnhandledAlertException f) {
try {
sleepsAreBad();
driver.switchTo().defaultContent();
Alert alert = driver.switchTo().alert();
String alertText = alert.getText();
System.out.println("Alert data: " + alertText);
alert.accept();
} catch (NoAlertPresentException e) {
e.printStackTrace();
}
}
sleepsAreBad();
return PageFactory.initElements(driver, FirstPage.class);
}
private void sleepsAreBad() {
try {
Thread.sleep(5000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
public class BaseTest {
public static WebDriver driver;
static String driverPath = "C:\\";
@BeforeClass
public static void setUp() {
System.out.println("****************");
System.out.println("launching Browser");
System.out.println("****************");
// Browser selection
//Firefox
DesiredCapabilities dc = new DesiredCapabilities();
dc.setCapability(CapabilityType.UNEXPECTED_ALERT_BEHAVIOUR, UnexpectedAlertBehaviour.IGNORE);
driver = new FirefoxDriver(dc);
driver.get(URL);
@AfterClass()
public static void tearDown() {
if (driver != null) {
System.out.println("Closing browser");
driver.quit();
}
}
public class Bookings extends BaseTest{
@Test(description = "Holiday booking")
public void CD01() {
FirstPage firstPage = PageFactory.initElements(driver, FirstPage.class);
firstPage
.logIn("username", "password")
.clickHolidayLink()
.completeHolidayFormAndSubmit("12/05/2016", "15/05/2016");
}
警报框这是警报框
进入UnhandledAlertException
后尝试一下catch
WebDriverWait wait = new WebDriverWait(driver, 3000);
wait.until(ExpectedConditions.alertIsPresent());
Alert alert = webDriver.switchTo().alert();
alert.accept();
可能会帮助您… :)
当我点击显示“alert()”函数的“Ok”按钮时,引导模式关闭。 下面是我的jQuery: 以下是我的html: 我正在从模式上的事件创建一个警报弹出窗口,但当单击警报()弹出窗口的“确定”时,它消失了。 如何防止在警报弹出窗口上点击“确定”后关闭模式? 谢啦
本文向大家介绍如何通过单击iOS中的警报外部来关闭警报?,包括了如何通过单击iOS中的警报外部来关闭警报?的使用技巧和注意事项,需要的朋友参考一下 理解和实现UIAlert可能会很棘手,特别是如果您不熟悉iOS开发,在这篇文章中,我们将看到当用户在警报框外点击时如何解除警报。 对于此演示,我们将使用UIAlert类,以使用要显示的消息以及可供选择的操作来配置警报和操作表。用所需的动作和样式配置警报
我知道这可能是一个容易修复的错误,但我没有找到它。当警报框出现并点击时,需要点击2次才能关闭它
它表示TypeError:无法读取未定义的属性(读取'then')。我需要先显示警报消息,然后再打开窗口。打开站点。
问题内容: 我正在用selenium。尝试单击按钮时,它将创建一个弹出窗口(警报),并且不返回页面对象。因此,我不能单独使用“单击”,因为此方法需要页面对象,并最终由于超时而失败。我可以使用“ chooseOkOnNextConfirmation()”,但这将单击弹出窗口,并且我还想验证弹出窗口是否实际出现。是否有任何方法可以单击并验证此警报? 问题答案: 对于警报,您将需要使用 getAlert
我是Android新手,我在我的项目中创建了一个基本的警报对话框,它只有[一条消息和一个积极按钮和一个消极按钮],消息是一个问题,询问[你想从账户中退出吗?],按下消极按钮关闭警报对话框,按下积极按钮也会关闭警报对话框,什么也不做。我想消极按钮只是关闭警报对话框,就像它一样,但是当我按下积极按钮时,它会为我做两件事[1-从应用程序中退出,2-开始我的活动,称为LoginActivity.kt] 注