2011-07-07 122 views
1

我已經設置了Selenium Grid2,我有一個讓我瘋狂的兩難境地。Selenium Grid2端口不能只在端口4444上工作

如果我在默認端口(4444)啓動集線器,由於某種原因,我所有的HTTP請求重定向到一個頁面,上面寫着

您正在使用 官方硒電網.0.0Find幫助wiki:更多幫助 這裏

這發生在所有瀏覽器和任何連接到互聯網的應用程序。

如果我將端口更改爲其他任何內容,則不會發生該問題,但隨後在Internet Explorer(特定於IE8)中進行測試不再有效。它們失敗時會出現無法找到元素的錯誤。

這也發生在非網格設置中,僅使用服務器(selenium-server-standalone-2.0rc3.jar),而不是網格消息,所有HTTPS連接都不可信。

任何想法?

+0

您使用的是rc3版本嗎? –

+0

是的,我也試過它與最新的編譯版本,相同的結果 – prestomanifesto

+0

所以我嘗試了它在家裏,它完美的作品,即使與其他端口。防火牆可能?不知道如何找出問題 – prestomanifesto

回答

0

這是您獲取「/」資源時獲得的頁面。但是你關心的任何頁面幾乎可以肯定是處於另一種情況下。下面是從集線器的代碼中的相關部分:

root.addServlet("/*", DisplayHelpServlet.class.getName());

root.addServlet("/grid/console/*", ConsoleServlet.class.getName()); 
    root.addServlet("/grid/register/*", RegistrationServlet.class.getName()); 
    // TODO remove at some point. Here for backward compatibility of 
    // tests etc. 
    root.addServlet("/grid/driver/*", DriverServlet.class.getName()); 
    root.addServlet("/wd/hub/*", DriverServlet.class.getName()); 
    root.addServlet("/selenium-server/driver/*", DriverServlet.class.getName()); 
    root.addServlet("/grid/resources/*", ResourceServlet.class.getName()); 

    root.addServlet("/grid/api/proxy/*", ProxyStatusServlet.class.getName()); 
    root.addServlet("/grid/api/testsession/*", TestSessionStatusServlet.class.getName()); 

    // Selenium Grid 1.0 compatibility routes for older nodes trying to 
    // work with the newer hub. 
    root.addServlet("/registration-manager/register/*", RegistrationServlet.class.getName()); 
    root.addServlet("/heartbeat", Grid1HeartbeatServlet.class.getName()); 

你有你的節點連接到正確的網址是什麼?他們應該從-hub http://localhost:4444/grid/register之類的東西開始正確註冊。

+0

這就是我註冊節點的方式。我不想嘲笑它,但我認爲最新版本(2.0.0)解決了這個問題 – prestomanifesto