Selenium Grid允許同時(shí)并行地寝贡、在不同的環(huán)境上運(yùn)行多個(gè)測(cè)試任務(wù)唯竹。這里主要演示一下怎么使用Selenium Grid唬渗。
準(zhǔn)備:
1典阵、需要兩臺(tái)機(jī)子
2、兩臺(tái)機(jī)子分別安裝好JDK環(huán)境
3镊逝、兩臺(tái)機(jī)子需要從 http://code.google.com/p/selenium/downloads/list下載selenium-server-standalone-*.jar包
開(kāi)始:
Grid需要一臺(tái)機(jī)子做為主節(jié)點(diǎn)壮啊,然后其它機(jī)子做為子節(jié)點(diǎn)連接到這個(gè)主節(jié)點(diǎn)上來(lái)。所以首先要啟動(dòng)主節(jié)點(diǎn)撑蒜。
? 啟動(dòng)主節(jié)點(diǎn):
選一臺(tái)機(jī)子做為主節(jié)點(diǎn)歹啼。打開(kāi)命令行,cd至selenium-server-standalone-*.jar包的目錄下座菠,然后用下面的命令啟動(dòng)主節(jié)點(diǎn)服務(wù):
1. java -jar selenium-server-standalone-2.24.1.jar -role hub
默認(rèn)啟動(dòng)默認(rèn)端口為4444狸眼。如果要改這個(gè)端口,可以再上面的命令后面加上 -port XXXX浴滴。啟動(dòng)完后份企,你可以用瀏覽 器 打開(kāi) http://localhost:4444/grid/console 這個(gè)網(wǎng)址查看主節(jié)點(diǎn)的狀態(tài)。
啟動(dòng)完主節(jié)點(diǎn)之后巡莹,要做的就是啟動(dòng)子節(jié)點(diǎn)司志。
? 啟動(dòng)子節(jié)點(diǎn):
先另一臺(tái)機(jī)子做為子節(jié)點(diǎn)。同樣打開(kāi)命令行降宅,cd至selenium-server-standalone-*.jar包的目錄下骂远,然后用下面的命令啟動(dòng)次節(jié)點(diǎn)服務(wù):
Java代碼
- java -jar selenium-server-standalone-2.24.1.jar -role node -hub http://192.168.40.24:4444/grid/register
其中192.168.40.24為主節(jié)點(diǎn)機(jī)子的ip地址,可以使用ipconfig命令在命令行查看得到腰根。上面命令默認(rèn)啟動(dòng)5555端口激才,可使用-port 更改。啟動(dòng)完成連接到主節(jié)點(diǎn)后额嘿,可以在主節(jié)點(diǎn)機(jī)子上 瘸恼,http://localhost:4444/grid/console網(wǎng)址查看到這個(gè)子節(jié)點(diǎn)狀態(tài)。使用同樣的方法册养,可以鏈接其它的子節(jié)點(diǎn)东帅。
? 運(yùn)行一個(gè)簡(jiǎn)單的例子:
上面已經(jīng)把grid弄成功了,現(xiàn)在我們用Grid來(lái)運(yùn)行一個(gè)很簡(jiǎn)單的例子球拦。代碼如下:
1. import java.net.MalformedURLException;
2. import java.net.URL;
3.
4. import org.openqa.selenium.WebDriver;
5. import org.openqa.selenium.remote.DesiredCapabilities;
6. import org.openqa.selenium.remote.RemoteWebDriver;
7.
8. public class GridTest {
9.
10. /**
11. * @throws MalformedURLException
12. */
13. public static void main(String[] args) throws MalformedURLException {
14. DesiredCapabilities test = DesiredCapabilities.firefox();
15. WebDriver dr = new RemoteWebDriver(new URL("http://192.168.40.67:5555/wd/hub"),test);
16. dr.get("http://www.xxxx.com");
17. }
18. }
在主節(jié)點(diǎn)機(jī)子上運(yùn)行上面的代碼靠闭,你可以在次節(jié)點(diǎn)機(jī)子上看到firefox瀏覽器被啟動(dòng)帐我,然后打開(kāi)了www.xxxx.com這個(gè)網(wǎng)址。
值得注意的是:
1. WebDriver dr = new RemoteWebDriver(new URL("http://192.168.40.67:5555/wd/hub"),test);
這一句中的192.168.40.67為次節(jié)點(diǎn)的ip地址愧膀。