Selenium2(WebDriver)總結(四)---基本元素操作


 WebDriver提供了常用的WEB控件的操作方法,比如:按鈕、輸入框、超鏈接等,廢話不多說,直接上代碼:

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.support.ui.Select;

public class WebDriverSimple {
    
    WebDriver driver;    
    
    public WebDriverSimple()
    {
     System.setProperty(
"webdriver.firefox.bin", "D:/Program Files/Mozilla Firefox/firefox.exe"); this.driver = new FirefoxDriver(); } //啟動瀏覽器 public void startBrowser(String url) { driver.get(url); //最大化瀏覽器 driver.manage().window().maximize(); } //使用xpath獲取元素對象 public WebElement locateElementByXpath(String locator) { WebElement element = driver.findElement(By.xpath(locator)); return element; } //使用CSS獲取元素對象 public WebElement locateElementByCss(String locator) { WebElement element = driver.findElement(By.cssSelector(locator)); return element; } /**操作輸入框input * 1.sendKeys代表輸入,參數為要輸入的值 * 2.clear代表清除輸入框中原有的數據 */ public void testInput(String locator,String content) { //WebElement input = this.locateElementByXpath(locator); WebElement input = this.locateElementByCss(locator); input.clear(); input.sendKeys(content); input.clear(); input.sendKeys(content); } // /**操作超鏈接link * 1.click代表點擊這個a鏈接 */ public void testLink(String locator) { WebElement link = this.locateElementByXpath(locator); link.click(); } /**操作 下拉框 select * 1.需要一個Select的類 * 2.selectByValue的參數為option中的value屬性 * 3.selectByIndex的參數為option的順序 * 4.selectByVisibleText的參數為option的text值 */ public void testSelect(String locator,int index) { WebElement element = this.locateElementByXpath(locator); Select select = new Select(element); select.selectByIndex(index); } public void testSelect(String locator,String value) { WebElement element = this.locateElementByXpath(locator); Select select = new Select(element); select.selectByValue(value); //select.selectByVisibleText(text); } /**操作單選按鈕radiobox * 1.click代表點擊選中這個單選框 * 2.isSelected代表檢查這個單選框有沒有被選中 */ public void testRaidoBox(String locator) { WebElement radio = this.locateElementByXpath(locator); radio.click(); radio.isSelected(); } /**操作 復選框checkbox * 1.click代表點擊選中這個多選框 * 2.isSelected代表檢查這個多選框有沒有被選中 */ public void testCheckBox(String locator) { WebElement checkbox = this.locateElementByXpath(locator); checkbox.click(); checkbox.isSelected(); } /**操作 按鈕button * 1.click代表點擊這個按鈕 * 2.sEnabled代表檢查這個按鈕是不是可用的 */ public void testButton(String locator) { WebElement submit = this.locateElementByXpath(locator); submit.click(); submit.isEnabled(); }

    /**操作 上傳控件upload
    * 1.一般是把路他徑直接sendKeys到這個輸入框中
    * 2.如果輸入框被加了readonly屬性,不能輸入,則需要用JS來去掉readonly屬性!
    */

      public void testUpload(String locator,String path)

 { WebElement load = this.locateElementByXpath(locator); load.sendKeys(path); } //關閉並退出driver
    public void closeBrowser() { driver.close(); driver.quit(); } }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM