亚洲好骚综合-亚洲黄色录像-亚洲黄色网址-亚洲黄色网址大全-99久久99久久-99久久99久久精品国产

您的位置:軟件測試 > 開源軟件測試 > 開源功能測試工具 > Selenium
Selenium對Alert彈框的多種處理
作者:喬葉葉 發布時間:[ 2016/7/6 11:54:42 ] 推薦標簽:功能測試 軟件測試工具

  這樣寫,代碼量大的話,需要都加,代碼會很冗余,不建議使用
  實現事件監聽接口WebDriverEventListener,alert一般是在click事件之后觸發的,所以在afterClickOn方法中對alert進行捕獲
@Override
public void afterClickOn(WebElement arg0, WebDriver arg1) {
// TODO Auto-generated method stub
boolean flag = false;
Alert alert = null;
try {
new WebDriverWait(arg1, 10).until(ExpectedConditions
.alertIsPresent());
alert = arg1.switchTo().alert();
flag = true;
// alert.accept();
} catch (NoAlertPresentException NofindAlert) {
// TODO: handle exception
NofindAlert.printStackTrace();
// throw NofindAlert;
}
if (flag) {
alert.accept();
}
}
  在初始化webdriver時對alert彈框進行全局設置
@Test(enabled = false)
public void ff5() {
System.setProperty(key, value);
DesiredCapabilities dc = new DesiredCapabilities();
dc.setCapability(CapabilityType.UNEXPECTED_ALERT_BEHAVIOUR,
UnexpectedAlertBehaviour.ACCEPT);
driver = new ChromeDriver(dc);
driver.get("file:///Users/user/Documents/qiaojiafei/seleniumtest.html");
driver.findElement(By.xpath("//*[@id='alert']/input")).click();
driver.findElement(By.xpath("//*[@id='alert']/input")).click();
}
  實現ITestListener接口,對代碼可能會拋出的UnexpectedAlertBehaviour異常進行捕獲
  1.新建AlertListner類實現ITestListener,并重寫onTestFailure方法
@Override
public void onTestFailure(ITestResult result) {
// TODO Auto-generated method stub
System.out.println("into failure test");
Throwable throwable = result.getThrowable();
if(throwable instanceof UnhandledAlertException) {
System.out.println("get UnhandledAlertException la"+throwable.toString());
AlertListnerTest tb = (AlertListnerTest) result.getInstance();
WebDriver driver = tb.getDriver();
Alert alert = null;
boolean flag = false;
try {
new WebDriverWait(driver,10).until(ExpectedConditions.alertIsPresent());
alert = driver.switchTo().alert();
flag = true;
//alert.accept();
} catch (NoAlertPresentException NofindAlert) {
// TODO: handle exception
System.out.println("進入onfail 異常catch");
NofindAlert.printStackTrace();
//throw NofindAlert;
}
if(flag) {
alert.accept();
}
}
  2.再建一個測試類,在類前面一行加入監聽@Listeners({ com.elong.air.tools.AlertListner.class }) ,測試類只需要寫正常代碼,不需要對可能會彈alert的彈框進行處理。
@Test
public void ff6() {
System.out.println("jinru ff6test");
System.setProperty(key, value);
driver = new ChromeDriver();
driver.get("file:///Users/user/Documents/qiaojiafei/seleniumtest.html");
driver.findElement(By.xpath("//*[@id='alert']/input")).click();
driver.findElement(By.xpath("//*[@id='alert']/input"));
}
  后這個方法還存在瑕疵,需要后續優化,歡迎讀者提出改進意見。

上一頁12下一頁
軟件測試工具 | 聯系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網站地圖
滬ICP備07036474 2003-2017 版權所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd
主站蜘蛛池模板: 草草网站 | 看片地址| 老司机深夜影院入口aaaa | 国产一级一片免费播放刺激 | 精品视频一区二区三区四区 | 全免费午夜一级毛片真人 | 亚洲免费色图 | 黄色一级免费看 | 欧美精品在线播放 | 成人在线观看网站 | 亚洲 欧美 中文 日韩专区 | 欧美中文网 | 性xxxxfreexxxxx | 日韩视频在线免费观看 | 黄色网址视频 | 国产色婷婷免费视频 | 无遮挡动漫黄漫网站在线观看 | 免费成年人在线观看视频 | 日韩精品在线免费观看 | 久久天天躁狠狠躁夜夜2020一 | 天堂亚洲欧美日韩一区二区 | 欧美伊人久久大香线蕉在观 | 国产精品日韩欧美在线第3页 | 91无套极品外围在线播放 | 国产成人精品一区二区三在线观看 | 一级特黄a大片免费 | 日本一区二区三区久久精品 | 伊人网伊人 | 国外成人免费视频 | 成人av在线播放 | 欧美日韩一区二区三区在线播放 | 性夜影院午夜看片 | 成人香蕉视频 | 日本国产美国日韩欧美mv | 久久综合九色综合网站 | 国产女女互摸互慰在线观看 | va亚洲va欧美va国产综合 | 欧美一级棒| 久久女同互慰一区二区三区 | 台湾中文娱乐综合久久久 | 日本一区二区三区免费观看 |