1. 程式人生 > >WebDriver API 大全

WebDriver API 大全

driver timeout med forward input 進程 元素操作 上傳 radi

  • 訪問某網頁地址:driver.get(url) 或 driver.navigate().to(url)
  • 訪問上一個訪問的網頁(模擬單擊瀏覽器的後退按鈕)driver.navigate().back()
  • 從上次訪問的網頁前進到下一個網頁(模擬單擊瀏覽器的前進功能)driver.navigate().forward()
  • 刷新當前網頁 driver.navigate().refresh()
  • 操作瀏覽器窗口
    瀏覽器窗口最大化:driver.manage().window().maximize();     關閉瀏覽器: driver.quit(); driver.close();
  • 獲取頁面的Title屬性 driver.getTitle();
  • 獲取頁面源代碼 driver.getPageSource()
  • 獲取當前頁面的URL地址 driver.getCurrentUrl()
  • 在輸入框中清除原有的文字內容 driver.clear()
  • 在輸入框中輸入指定內容 driver.sendKeys("輸入的內容")
  • 鼠標單擊按鈕 driver.click()
  • 雙擊某個元素
    Actions builder =new Actions(driver) //聲明Action對象     builder.doubleClick(driver.findElement(By.id("inputbox"))).build().perform();
  • 操作單選下拉列表
    Select select = new Select(driver.findElement(By.id("select"))); 使用id屬性找到頁面上id屬性為select的下拉列表元素     select.isMultiple(); 判斷下拉列表是否允許多選 true:多選 false:單選     select.selectByIndex(3); 表示選中下拉列表的第四個選項,0表示第一個選項     select.selectByVisibleText(“A”); 表示通過選項文字來進行選中     select.selectByValue(“1”); 表示使用下拉列表選項的Value屬性值進行選中操作,值為1
    select.deselectAll(); 全部取消選中     select.deselectByValue(“1”); 取消選中某一個選項     select.deselectByVisibleText(“A”);     select.getAllSelectedOptions();     select.getFirstSelectedOption(); 獲取當前被選中的下拉列表選項     select.getFirstSelectedOption().gettext(); 獲取當前被選中的下拉列表選項文本
  • 檢查單選列表的選項文字是否符合期望
  • 單選項(Radio Button)
    WebElement radio=driver.findElement(By.id("BookMode"));     radio.click();     //選擇某個單選項     radio.clear();     //清空某個單選項     radio.isSelected();  //判斷某個單選項是否已經被選擇
  • 多選項(checkbox)
    WebElement checkbox = driver.findElement(By.id("myCheckbox."));     checkbox.click();     checkbox.clear();     checkbox.isSelected();     checkbox.isEnabled()
  • 殺掉Windows的瀏覽器進程
    WindowsUtils.tryToKillByName("firefox.exe");     WindowsUtils.tryToKillByName("chrome.exe");     WindowsUtils.tryToKillByName("iexplore.exe");
  • 將當前瀏覽器的窗口截屏
    driver.get("http://www.baidu.com");     File scrFile=((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE); 調用方法截圖保存在file對象中       try {         FileUtils.copyFile(scrFile, new File("C:\\test\\tet.png")); 將file對象轉換成為一個保存在C磁盤下test目錄中文件名為test.png的圖片文件         } catch (Exception e) {         e.printStackTrace();       }
  • 檢查頁面元素的文本內容是否出現
  • 執行JavaScript腳本
  • 拖拽頁面元素
  • 模擬鍵盤的操作
  • 彈出對話框(Popup dialogs)
    Alert alert = driver.switchTo().alert();     alert.accept();  //確定     alert.dismiss();  //取消     alert.getText(); //獲取文本
  • 表單(Form)
  Form中的元素的操作和其它的元素操作一樣,對元素操作完成後對表單的提交可以:     WebElement approve = driver.findElement(By.id("approve"));     approve.click();       或     approve.submit();//只適合於表單的提交
  • 上傳文件
    上傳文件的元素操作:       WebElement adFileUpload =driver.findElement(By.id("WAP-upload"));       String filePath = "C:\test\\uploadfile\\media_ads\\test.jpg";       adFileUpload.sendKeys(filePath);
  • Windows 和 Frames之間的切換
    driver.switchTo().defaultContent();     //返回到最頂層的frame/iframe     driver.switchTo().frame("leftFrame");    //切換到某個frame:     driver.switchTo().window("windowName");  //切換到某個window
  • 調用Java Script
    Web driver對Java Script的調用是通過JavascriptExecutor來實現的,例如:     JavascriptExecutor js = (JavascriptExecutor) driver;     js.executeScript("JS腳本");
  • 超時設置
    WebDriver driver = new FirefoxDriver();     driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);    //識別元素時的超時時間     driver.manage().timeouts().pageLoadTimeout(10, TimeUnit.SECONDS); //頁面加載時的超時時間     driver.manage().timeouts().setScriptTimeout(10, TimeUnit.SECONDS);  //異步腳本的超時時間
  • 操作頁面元素
    Click(); 執行單擊元素操作     SendKeys(text) 給input元素輸入文本     Clear() 清空input元素的值     Submit() 對指定元素所在的from元素進行提交操作

WebDriver API 大全