No connection could be made because the target machine actively refused it(selenium)

后端 未结 7 713
别那么骄傲
别那么骄傲 2021-02-07 00:59

I have extracted the following code from selenium IDE.(c# remote control)

using System;
using System.Text;
using System.Text.RegularExpressions;
using System.Thr         


        
7条回答
  •  南笙
    南笙 (楼主)
    2021-02-07 01:15

    I get the same error, but on a different line of code. Hopefully this might help someone somewhere even if it doesn't answer the initial question.

        public override void SetupTest()
        {
            Driver = new FirefoxDriver();
            base.SetupTest();
        }
    

    I'm using the WebDriver (I don't run the Selenium server), and the constructor of FirefoxDriver throws the Exception.

    Sometimes I get this exception:

    A first chance exception of type 'System.Net.Sockets.SocketException' occurred in System.dll
    Additional information: No connection could be made because the target machine actively refused it
    

    with this call stack:

        WebDriver.dll!OpenQA.Selenium.Firefox.Internal.ExtensionConnection.ConnectToBrowser(System.TimeSpan timeToWait) Line 247    C#
        WebDriver.dll!OpenQA.Selenium.Firefox.Internal.ExtensionConnection.Start() Line 98  C#
        WebDriver.dll!OpenQA.Selenium.Firefox.FirefoxDriver.StartClient() Line 237  C#
        WebDriver.dll!OpenQA.Selenium.Remote.RemoteWebDriver.RemoteWebDriver(OpenQA.Selenium.Remote.ICommandExecutor commandExecutor, OpenQA.Selenium.ICapabilities desiredCapabilities) Line 89    C#
        WebDriver.dll!OpenQA.Selenium.Firefox.FirefoxDriver.FirefoxDriver(OpenQA.Selenium.Firefox.FirefoxBinary binary, OpenQA.Selenium.Firefox.FirefoxProfile profile, OpenQA.Selenium.ICapabilities capabilities, System.TimeSpan commandTimeout) Line 172    C#
        WebDriver.dll!OpenQA.Selenium.Firefox.FirefoxDriver.FirefoxDriver(OpenQA.Selenium.Firefox.FirefoxBinary binary, OpenQA.Selenium.Firefox.FirefoxProfile profile, System.TimeSpan commandTimeout) Line 167    C#
        WebDriver.dll!OpenQA.Selenium.Firefox.FirefoxDriver.FirefoxDriver(OpenQA.Selenium.Firefox.FirefoxBinary binary, OpenQA.Selenium.Firefox.FirefoxProfile profile) Line 154    C#
        WebDriver.dll!OpenQA.Selenium.Firefox.FirefoxDriver.FirefoxDriver(OpenQA.Selenium.Firefox.FirefoxProfile profile) Line 132  C#
        SetupTest() Line 513    C#
    

    Sometimes I get this exception:

    A first chance exception of type 'System.Net.Sockets.SocketException' occurred in System.dll
    Additional information: Only one usage of each socket address (protocol/network address/port) is normally permitted
    

    with this call stack:

        WebDriver.dll!OpenQA.Selenium.Firefox.Internal.ExtensionConnection.DetermineNextFreePort(string host, int port) Line 161    C#
        WebDriver.dll!OpenQA.Selenium.Firefox.Internal.ExtensionConnection.Start() Line 88  C#
        [same as above]
    

    But one thing I didn't realize at first is that if you continue execution (F5), everything is fine. The Exception must be handled in the WebDriver.

    The only thing is that I had the DEBUG/Exceptions/CLR Exceptions: Thrown [checked]. Just uncheck that and everything runs without throwing/breaking. Took me a while to realize that. Leftovers of a previous debugging session...

提交回复
热议问题