1. 針對系統彈出框:
(1)點擊確認:driver.switchTo().alert().accept();
(2)點擊取消:driver.switchTo().alert().dismiss();
2. 針對DIV彈出框:
直接查找元素,點擊
3. 針對DIV嵌套有frame頁面的彈出框
//先點擊出彈出框
WebElement ele0 = driver.findElement(By.id("parentIframe"));
ele0.click();
//查找到frame,並跳轉過去
WebElement ele1 = driver.findElement(By.id("layui-layer-iframe1"));
driver.switchTo().frame(ele1);
@Test
public void At()
{
/*
* 普通DIV彈出層
*/
driver.get("http://layer.layui.com/");
WebElement ele0 = driver.findElement(By.linkText("詢問層"));
ele0.click();
WebElement ele1 = driver.findElement(By.linkText("奇葩"));
ele1.click();
WebElement ele2 = driver.findElement(By.linkText("知道了"));
ele2.click();
/*
*DIV嵌套FRAME
*/
WebElement ele3 = driver.findElement(By.id("parentIframe"));
ele3.click();
WebElement ele4 = driver.findElement(By.id("layui-layer-iframe1"));
driver.switchTo().frame(ele4);
WebElement ele5 = driver.findElement(By.id("new"));
ele5.click();
}
@Test
public void BaiduAt()
{
/*
* 系統彈出框
*/
driver.get("http://www.baidu.com/");
Actions action = new Actions(driver);
//鼠標停留出現彈出框(將彈出層代碼激活)
action.moveToElement(driver.findElement(By.linkText("設置"))).release().perform();;
WebElement ele = driver.findElement(By.linkText("搜索設置"));
ele.click();
//系統彈出框
WebElement ele1 = driver.findElement(By.linkText("保存設置"));
ele1.click();
driver.switchTo().alert().accept();
}