可能目前使用WebDriver的絕大多數(shù)人還沒有接觸到Remote WebDriver,所以對Remote WebDriver沒有一個概念,其實(shí)可以把Remote WebDriver理解成為在遠(yuǎn)程PC上執(zhí)行WebDriver用例。
	  那么遠(yuǎn)程的好處在哪里呢?除了可以更方便的進(jìn)行跨平臺、瀏覽器的測試外,重要的一點(diǎn)是排除我們本地環(huán)境的污染,因?yàn)槲覀児ぷ饔玫腜C其實(shí)我們安裝了很多的軟件,那么在coding的時候這些軟件對環(huán)境的污染難免不對我們的代碼產(chǎn)生影響,后很容易造成代碼在我這運(yùn)行良好,但是到了別人那跑不起來了或者結(jié)果有差異,這時我們需要一個干凈的PC環(huán)境作為一個驗(yàn)證機(jī),在自己的PC上編寫完代碼后在驗(yàn)證機(jī)上進(jìn)行Remote執(zhí)行驗(yàn)證(當(dāng)然有犟嘴的說我可以把代碼拷過去執(zhí)行啊,不需要Remote WebDriver啊,對于這樣的人我們不強(qiáng)求他了。。。)。下面直接搭建Remote環(huán)境:
	  需要另外一個PC, 在這個PC上安裝JDK以及需要執(zhí)行的瀏覽器的driver(安裝方法看我前面的如何搭建Selenium環(huán)境那章)
	  將這個 selenium-server-standalone-2.35.0.jar (這里的2.35.0不是固定的可以是其他版本)拷貝到任意一個目錄下,用控制臺進(jìn)入這個目錄執(zhí)行: java -jar selenium-server-standalone-2.35.0.jar  如果看到如下圖證明Remote PC 的Server 配置成功了
	
	  下面直接編寫Remote WebDriver代碼了(這里用到了JUnit4估計都會我不細(xì)說了,以后可能會寫點(diǎn)TestNG快速入門的文章)
	package org.coderinfo.demo;
	import java.net.URL;
	import java.util.concurrent.TimeUnit;
	import org.junit.After;
	import org.junit.Before;
	import org.junit.Test;
	import org.openqa.selenium.By;
	import org.openqa.selenium.WebDriver;
	import org.openqa.selenium.remote.DesiredCapabilities;
	import org.openqa.selenium.remote.RemoteWebDriver;
	import org.testng.AssertJUnit;
	/**
	* @author CoderInfo
	* @E-mail coderinfo@163.com
	*
	*/
	public class RemoteWebDriverDemo {
	private static final String URL = "http://www.baidu.com";
	private static WebDriver driver;
	@Before
	public void setUp() throws Exception {
	DesiredCapabilities dc = DesiredCapabilities.chrome(); // 設(shè)置需要驅(qū)動的瀏覽器,其他的瀏覽器都是以此類推
	driver = new RemoteWebDriver(new URL(
	"http://10.127.206.130:4444/wd/hub"), dc); // 這個URL
	// 10.127.206.130
	// 是要remote PC 的IP
	// Address,需要改為你自己的
	driver.manage().timeouts().pageLoadTimeout(60, TimeUnit.SECONDS); // 設(shè)置頁面加載超時的大時長
	}
	@After
	public void tearDown() throws Exception {
	driver.quit();
	}
	@Test
	public void test() throws InterruptedException {
	driver.get(URL); // 訪問度娘首頁
	driver.findElement(By.id("kw")).sendKeys("CoderInfo");
	driver.findElement(By.id("su")).click();
	Thread.sleep(10000);
	AssertJUnit.assertEquals("CoderInfo_百度搜索", driver.getTitle());
	}
	}