您需要同時觸發5次測試 - 都指向同一個集線器,使用所有的瀏覽器。在接收到來自不同測試的命令後,集線器會將這些命令傳遞給匹配該功能的RC。您可以在此頁面看到更多細節:http://selenium-grid.seleniumhq.org/how_it_works.html。
每本網站: -
當然要真正利用硒電網,你需要 並行運行測試。如果您正在使用 Java編寫Selenium測試,則可以使用TestNG並行運行或並行JUnit。如果 傾向於使用Ruby編寫Selenium測試,則可能需要將 看成DeepTest或產生多個進程。很有可能您最喜歡的編程語言和開發平臺已經有了 解決方案。
編輯: 上面給出的網站是Selenium 1.x版本,而不是Grid 2.0。然而,運行並行測試的基本概念仍然相同
編輯2: 步驟和示例程序如下。請注意,這是一個非常基本的測試,僅向您展示Grid如何並行運行測試。
第一步 - 啓動電網樞紐 java -jar selenium-server-standalone.jar -role hub
第二步 - 開始RC節點。我們正在使用的測試例如webdriver測試。所以我們需要啓動webdriver節點。該命令將啓動一個支持5個Firefox瀏覽器,5個googlechrome和1個IE瀏覽器的webdriver節點。這是webdriver的默認配置。
java -jar selenium-server-standalone.jar -role wd -hub http://localhost:4444/grid/register
第3步 - 創建5個獨立的程序,類似於下面給出的。這個程序是在JAVA中。您需要將其更改爲您需要的語言。將類名更改爲Program2,Program3等。如前所述,這不是並行運行測試的最佳方式。您需要使用testNG或jUnit同時觸發多個測試。由於這本身就是一個不同的話題,所以在這裏不會解釋它。
public class Program1{
public static void main(String args[]){
WebDriver wd;
//Assign a remotewebdriver object to webdriver with firefox capability
wd=new RemoteWebDriver(new URL("http://localhost:4444/wd/hub"),DesiredCapabilities.firefox());
wd.get("http://www.google.com");
//Sleep for 2 seconds so that RC will not be released. This is to demonstrate Hub using multiple RCs
Thread.sleep(120000);
//Close webdriver
wd.quit();
}
}
第4步 - 同時運行所有5個程序。
第5步 - 觀看電網並行運行5個測試的魔力。 :)
你在你的測試套件中有5個測試嗎? –