1

「Selenium Remote Webdriver」を使用して自動化テストを実行しようとしていますが、リモート サーバーに接続しようとすると例外が発生します。

例外は次のとおりです。

Unexpected error. System.Net.WebException: Unable to connect to the remote server ---> System.Net.Sockets.SocketException: No connection could be made because the target machine actively refused it 127.0.0.1:4444
   at System.Net.Sockets.Socket.DoConnect(EndPoint endPointSnapshot, SocketAddress socketAddress)
   at System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure, Socket s4, Socket s6, Socket& socket, IPAddress& address, ConnectSocketState state, IAsyncResult asyncResult, Exception& exception)
   --- End of inner exception stack trace ---
   at System.Net.HttpWebRequest.GetRequestStream(TransportContext& context)
   at System.Net.HttpWebRequest.GetRequestStream()
   at OpenQA.Selenium.Remote.HttpCommandExecutor.Execute(Command commandToExecute) in c:\Projects\WebDriver\trunk\dotnet\src\WebDriver\Remote\HttpCommandExecutor.cs:line 109
   at OpenQA.Selenium.Remote.RemoteWebDriver.Execute(String driverCommandToExecute, Dictionary`2 parameters) in c:\Projects\WebDriver\trunk\dotnet\src\WebDriver\Remote\RemoteWebDriver.cs:line 836

私が書いたコードは次のとおりです。

            DesiredCapabilities capabilities = DesiredCapabilities.Firefox();
            capabilities.Platform = new Platform(PlatformType.Vista);
            capabilities.SetCapability("api_key", "REPLACE_API_KEY");
            capabilities.SetCapability("api_secret", "REPLACE_API_SECRET");  


            var remoteAddress = new Uri("http://122.176.112.91:4444/wd/hub");

           // ... but only if it supports javascript
            capabilities.IsJavaScriptEnabled = true;


            // Get a handle to the driver. This will throw an exception
            // if a matching driver cannot be located
            IWebDriver driver = new RemoteWebDriver(remoteAddress, capabilities);
            driver.Manage().Timeouts().ImplicitlyWait(new TimeSpan(0, 0, 30));


            // Query the driver to find out more information
            ICapabilities actualCapabilities = ((RemoteWebDriver)driver).Capabilities;

この問題を解決するのを手伝ってください。

前もって感謝します。

4

1 に答える 1

0

スタック トレースは、ローカル マシンが積極的に接続を拒否していることを示しています。ファイアウォールによってすべてのポートで Firefox が許可されていることを再確認してください。

残念ながら、ファイアウォールが開いている場合でも、この問題が発生しました: C# + VisualStudio + 複数の WebDriver インスタンス = SocketExceptions

于 2014-11-20T04:48:02.033 に答える