在撰寫文件的此時,Selenium 2.0尚在Beta 2,其包括了WebDriver介面與一些實作類別,使用WebDriver實作類別,無需啟動Selenium Server,每個WebDriver實例,實際驅動一個瀏覽器。例如,若想驅動Firefox瀏覽器,可以如下:
WebDriver driver = new FirefoxDriver();
      
      使用WebDriver,可以用更方便的API來查找元素與操作瀏覽器。例如查找 測試 JSP 中的按鈕並按下:
driver.findElement(By.cssSelector("input[value='送出']")).click();
      
      使用WebDriver非常直覺,以 結合 Selenium RC 中的例子,若改寫為WebDriver的話,可以如下:
package test.cc.openhome;
import static org.junit.Assert.*;
import com.thoughtworks.selenium.*;
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.Test;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.server.SeleniumServer;
public class AddJSPTest {
    private static WebDriver driver;
    
    @BeforeClass
    public static void setUpClass() throws Exception {
        driver = new FirefoxDriver();
    }
    
    @AfterClass
    public static void tearDownClass() throws Exception {
        driver.quit();
    }
   
    @Test
    public void testAddJSP() throws Exception {
        driver.get("http://localhost:8080/BookmarkOnline/add.jsp");
        //selenium.open("/BookmarkOnline/add.jsp");
        driver.findElement(By.cssSelector("input[value='送出']")).click();
        String pageSource = driver.getPageSource();
        
        assertTrue(pageSource.contains("新增書籤失敗"));
        assertTrue(pageSource.contains("網址不能空白"));
        assertTrue(pageSource.contains("請輸入網頁標題"));
        
        driver.findElement(By.name("url")).sendKeys("www.javaworld.com.tw");
        driver.findElement(By.cssSelector("input[value='送出']")).click();
        pageSource = driver.getPageSource();
        
        assertTrue(pageSource.contains("新增書籤失敗"));
        assertTrue(pageSource.contains("請輸入網頁標題"));
        
        driver.findElement(By.name("url")).sendKeys("www.javaworld.com.tw");
        driver.findElement(By.name("title")).sendKeys("JavaWorld@TW");
        driver.findElement(By.cssSelector("input[value='送出']")).click();
        pageSource = driver.getPageSource();
        
        assertTrue(pageSource.contains("新增書籤成功"));
        assertTrue(pageSource.contains("http://www.javaworld.com.tw"));
        assertTrue(pageSource.contains("JavaWorld@TW"));
        assertTrue(pageSource.contains("程式設計"));
    }
}
如果對Selenium 2.0與WebDriver有興趣,可以看看 Selenium 2.0 and WebDriver 線上說明 。

