2017-06-16 31 views
-1

我們正在爲我們的手動QA團隊構建Web界面,以便能夠運行Selenium測試,這些測試通過Selenium Grid在遠程機器上執行。如何檢查遠程Selenium Grid集線器是否正在執行測試?

我正在尋找一些方法來遠程檢查硒電網是目前執行任何測試,這樣我就可以再排隊,直到前面的測試執行完成了從網絡接口發送到網格中的任何額外的運行。這將確保我們避免過多的同時進行測試。

我已經通過StackOverflow搜索並閱讀了Selenium文檔,看看是否有任何可用於檢查此命令的命令,但是出現空白。

+0

參見:[?我怎麼做X](https://meta.stackoverflow.com/questions/253069/whats-the-appropriate-new-current-close-reason-對於SO-do-i-do-x)對SO的期望是,用戶提出問題不僅要研究回答他們自己的問題,還要分享研究,代碼嘗試和結果。這表明你已經花時間去嘗試幫助自己,它使我們避免重申明顯的答案,最重要的是它可以幫助你得到更具體和相關的答案!另請參閱:[問] – JeffC

+0

@JeffC 「我已經通過StackOverflow進行了搜索並閱讀了Selenium文檔,以查看是否有任何命令可用於檢查此問題,但出現空白。」 這是一個問題,其答案對我來說並不明顯,並且以前沒有在我能找到的論壇上詢問過。我可以想象說明我已經搜索了答案,這表明我在提問之前已經完成了工作。不知道你還需要什麼。 – Keith

+0

快速搜索爲我提供了前兩個結果:https://stackoverflow.com/questions/6517501/selenium-2-how-to-check-that-server-is-running-and-stop-the-server和https ://allabouttestautomation.wordpress.com/2016/03/19/useful-selenium-grid-commands-to-query-status-and-shutdown-hub-nodes/它看起來像你正在尋找的東西,但你沒有提到你已經看過他們或者解僱他們等等。 – JeffC

回答

1

你不需要自己管理測試隊列。硒網格和節點已經到位。所以爲了減少每個節點的過載,可以使用一些配置。我們有maxSessionmaxInstance參數。

maxSession - 節點上可以並行運行的瀏覽器的最大數量 maxInstance - 可以在節點上並行運行的相同瀏覽器實例的最大數量。

F.e. maxSession = 3,maxInstance = 2.你可以有2個Firefox + 1個Chrome瀏覽器

你沒有提到你的硒驅動程序版本是什麼。所以可以說它的最新3.x.x。您可以創建node-config.json文件並在其中存儲此參數。

{ 
    "capabilities": [ 
     { 
      "browserName": "chrome", 
      "maxInstances": "2",#settings per browser 
     } 
    ], 
    "maxSession": "3", #settings per node 
} 

啓動的節點:

java -jar /path_to_driver/serve.jar -role node -hub HUB_ADDRESS -nodeConfig /path_to_node_config/node-config.json 

所以,當你要運行新的測試 - 電網將註冊,並會等待一個免費的節點。所以它可以爲你保留一個堆棧

也可以使用bash命令parallel並創建一個測試數組,然後以並行方式運行它。可以說5個工作並行。

parallel --jobs 5 -k --gnu ::: "${arrayToRun[@]}"

更多Selenium configuration 更多關於運行測試中parallel

0

你可以看到在網格控制檯這個細節。例如,如果您在本地機器上運行集線器,則控制檯URL是http://localhost:4444/grid/console。如果您在另一臺計算機上運行網格集線器,請使用控制檯URL中的網格集線器計算機的IP或主機名替換本地主機。

有很多方法可以知道它。

  1. 如果任一節點的被測試執行佔據那麼瀏覽器圖標將顯示爲灰色。(有些時候,你必須刷新頁面以獲取狀態)。

  2. 否則,如果將鼠標懸停在控制檯中的任何瀏覽器圖標上,它將顯示會話ID(如果它正在執行任何測試)。

  3. 在硒中心命令行窗口日誌。它會在頻繁的時間間隔內列出可用的節點。

enter image description here

相關問題