Selenium.NET HtmlUnitDriver无法连接到远程服务器
我正在将一些SeleniumJUnit测试移植到.NET项目(MVC项目的测试) 我在Java中有以下几行代码:Selenium.NET HtmlUnitDriver无法连接到远程服务器,.net,selenium,selenium-webdriver,nunit,htmlunit-driver,.net,Selenium,Selenium Webdriver,Nunit,Htmlunit Driver,我正在将一些SeleniumJUnit测试移植到.NET项目(MVC项目的测试) 我在Java中有以下几行代码: WebDriver driver = new HtmlUnitDriver(); 我将其移植到.NET,如下所示: IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.HtmlUnit()); 在Java中,这非常适合测试Spring应用程序,但在.NET中,它会引发一个异常: Test method TDD.T
WebDriver driver = new HtmlUnitDriver();
我将其移植到.NET,如下所示:
IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.HtmlUnit());
在Java中,这非常适合测试Spring应用程序,但在.NET中,它会引发一个异常:
Test method TDD.Tests.Acceptatie.TestLoginScreen.LoginScreenTest threw exception:
OpenQA.Selenium.WebDriverException: Unexpected error.
System.Net.WebException: Can't connect to remote server --->
System.Net.Sockets.SocketException:
Can't connect because target computer actively refused the connection 127.0.0.1:4444
注意:错误信息是从荷兰语翻译过来的,因此可能不是英语中的确切信息
我已经添加了Selenium.Webdriver NuGet包。项目结构如下:
- MVC项目(TDD)
- 参考TDD的NUnit项目(TDD.测试)
IWebDriver driver = new RemoteWebDriver(new Uri("http://localhost:8080"), DesiredCapabilities.HtmlUnit());
我还尝试使用环回地址而不是“localhost”
版本:
有人知道是什么导致了这个问题,以及如何解决这个问题吗
提前谢谢 调用该类的语法如下所示:
public RemoteWebDriver(Uri remoteAddress, ICapabilities desiredCapabilities)
where:
remoteAddress
Type: System.Uri
URI containing the address of the WebDriver remote server (e.g. http://127.0.0.1:4444/wd/hub).
desiredCapabilities
Type: OpenQA.Selenium.ICapabilities
An ICapabilities object containing the desired capabilities of the browser.
根据错误
OpenQA.Selenium.WebDriverException: Unexpected error.
System.Net.WebException: Can't connect to remote server --->
System.Net.Sockets.SocketException:
Can't connect because target computer actively refused the connection 127.0.0.1:4444
您的程序/脚本似乎无法连接到WebDriver远程服务器
根据您的第二次代码试用,是您的应用程序服务器,而不是WebDriver远程服务器,例如Selenium Grid Hub
。因此,您的程序将显示错误。如果您使用的是Selenium网格,请将该行更改为:
IWebDriver driver = new RemoteWebDriver(new Uri("http://127.0.0.1:4444/wd/hub"), DesiredCapabilities.HtmlUnit());
最后,快速查看的继承层次结构的API文档显示了以下层次结构,其中
HtmlUnit
不存在:
但是,根据讨论,您的第一次代码试用本应有效:
IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.HtmlUnit());
如果要使用Firefox实现,您可以:
TL;博士
IWebDriver driver = new RemoteWebDriver(DesiredCapabilities.HtmlUnitWithJavaScript());