Selenium Grid


Selenium Grid允許同時並行地、在不同的環境上運行多個測試任務。這里主要演示一下怎么使用Selenium Grid。

准備:

1、需要兩台機子

2、兩台機子分別安裝好JDK環境

3、兩台機子需要從 http://code.google.com/p/selenium/downloads/list下載selenium-server-standalone-*.jar包

開始:

Grid需要一台機子做為主節點,然后其它機子做為子節點連接到這個主節點上來。所以首先要啟動主節點。

  • 啟動主節點:

選一台機子做為主節點。打開命令行,cd至selenium-server-standalone-*.jar包的目錄下,然后用下面的命令啟動主節點服務:

java -jar selenium-server-standalone-2.24.1.jar -role hub

默認啟動默認端口為4444。如果要改這個端口,可以再上面的命令后面加上 -port XXXX。啟動完后,你可以用瀏覽 器    打開 http://localhost:4444/grid/console 這個網址查看主節點的狀態。

啟動完主節點之后,要做的就是啟動子節點。

  • 啟動子節點:
先另一台機子做為子節點。同樣打開命令行,cd至selenium-server-standalone- *.jar包的目錄下,然后用下面的命令啟動次節點服務:
java -jar selenium-server-standalone-2.24.1.jar  -role  node  -hub http://192.168.40.24:4444/grid/register

其中192.168.40.24為主節點機子的ip地址,可以使用ipconfig命令在命令行查看得到。上面命令默認啟動5555端口,可使用-port 更改。啟動完成連接到主節點后,可以在主節點機子上 ,http://localhost:4444/grid/console網址查看到這個子節點狀態。使用同樣的方法,可以鏈接其它的子節點。

  • 運行一個簡單的例子:
上面已經把grid弄成功了,現在我們用Grid來運行一個很簡單的例子。代碼如下:
import java.net.MalformedURLException;
import java.net.URL;

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.openqa.selenium.remote.RemoteWebDriver;

public class GridTest {

	/**
	 * @throws MalformedURLException
	 */
	public static void main(String[] args) throws MalformedURLException {
		DesiredCapabilities test = DesiredCapabilities.firefox();
		WebDriver dr = new RemoteWebDriver(new URL("http://192.168.40.67:5555/wd/hub"),test);
		dr.get("http://www.51.com");
	}
}

在主節點機子上運行上面的代碼,你可以在次節點機子上看到firefox瀏覽器被啟動,然后打開了www.51.com這個網址。

值得注意的是:

WebDriver dr = new RemoteWebDriver(new URL("http://192.168.40.67:5555/wd/hub"),test);

 這一句中的192.168.40.67為次節點的ip地址。


免責聲明!

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



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