How to handle blocking clicks

    xiaoxiao2021-03-25  117

     Compare window.open with window.showModalDialog()

    Function

    detail

    window.open()

    是非阻塞式,也可以说非模态窗口

    window.showModalDialog()

     

    阻塞式模态窗口。阻塞或者模态窗口,只有你把当前窗口关闭后,才能去操作父亲窗口

    How to handle it:

    SeleniumUtils.clickWithTimeout

    Method1:

    // to pop-up driver.switchTo().frame(driver.findElement(By.cssSelector("iframe#fancybox-frame"))); Assert.assertTrue(SeleniumUtils.isTextPresent(driver, "Are you a returning official?")); log.info("Assert ok "); //yes //new thread to click radio button new Thread() { public void run() { SeleniumUtils.selectRadioButton(driver,driver.findElement(By.cssSelector("div#con")), 0); System.out.println("Thread done"); } }.start(); //Main thread switch window SeleniumUtils.switchToAnotherWindow(driver); log.info(driver.getPageSource()); log.info("switch done"); driver.close(); driver.switchTo().window(parentWindowID); SeleniumUtils.sleepInSeconds(2); driver.switchTo().frame(driver.findElement(By.cssSelector("iframe#fancybox-frame"))); Assert.assertTrue(SeleniumUtils.isTextPresent(driver, "Are you a returning official?"));
    转载请注明原文地址: https://ju.6miu.com/read-12754.html

    最新回复(0)