初識WebDriver

        前段時間接觸了selenium,開始使用selenium IDE來進行驗證測試,可是有個用例怎麼都沒法獲取到element,換了XPATH,CSS等都失敗了。折騰了很久,最終在羣裏問了大神雲層,大神建議使用selenium2也就是WebDriver,而且給我提供了個視頻的連接,今後我也走上了跟webdriver親密接觸的康莊大道。web

       找來My Eclipse,JDK,firefox,selenium standalone搭了個環境,拿百度頁面試水,果真不出我所料,編譯不經過,一堆報錯,以下是到執行成功所經歷的錯誤:面試

一、找不到firefox。測試

緣由:機器破,我把firefox裝到了D盤,因此....firefox

解決:最好裝到C盤,若是已經做死了,那就寫上以下代碼幫助找到你的firefox。code

System.setProperty("webdriver.firefox.bin", "D:\\Program Files (x86)\\Mozilla Firefox\\firefox.exe");視頻

二、JDK版本低ip

緣由:檢查後發現我裝了JDK1.6,版本低了。element

解決:再裝個JDK1.7,經過添加到Libraries裏就OK了。selenium

三、selenium standalone版本過高編譯

緣由:......

解決:下載個slenium standalone的jar包,再關聯

四、firefox版本過高

緣由:可怕的版本問題

解決:下載了firefox32.0.1的版本,自定義安裝,裝的時候不安裝更新模塊,今後無憂了。

五、click無效

緣由:估計是找不到元素

解決:百度了幾種方法,嘗試了下,發現經過傳送ENTER鍵的方法有效,以下爲代碼:

driver.findElement(By.id("kw")).sendKeys(Keys.ENTER);

 

所有代碼以下:

import org.openqa.selenium.By;
import org.openqa.selenium.Keys;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;

public class Basic {
	public static void main(String[] args){
		//配置firefox的所在目錄
		System.setProperty("webdriver.firefox.bin", "D:\\Program Files (x86)\\Mozilla Firefox\\firefox.exe");
		//新建一個WebDriver的類
		WebDriver driver = new FirefoxDriver();
		//調用firefox打開百度頁面
		driver.navigate().to("https://baidu.com.cn");
		//在搜索框中輸入中國
		driver.findElement(By.id("kw")).sendKeys("中國");
		driver.findElement(By.id("kw")).sendKeys(Keys.ENTER);
		//以下爲click無效的另外一種方法,可是沒起到做用
		//driver.findElement(By.id("su")).findElement(By.xpath("..")).click();  
	    //driver.findElement(By.id("su")).click();  
}
}
相關文章
相關標籤/搜索