版本
FF V48 硒的webdriver v2.53.1
视窗7(64)
.NET 4.0和.NET 4.5
尝试修复
作为每@jaffa我手动添加以下refereces并得到了问题:
WebDriver.dll v2.53.1
WebDriver.Support.dll v2.53.1
我再未被引用他们跟着@HassanRahman和使用的NuGet:
WebDriver.dll v2.53.1
WebDriver.Support.dll v2.53.1
同样的错误。
OpenQA.Selenium.WebDriverException : Failed to start up socket within 45000
故障排除
我有预感,并决定从针对.NET 4.5降级到.NET 4.0(完全没有客户端配置文件),并改为错误:
An unhandled exception of type 'OpenQA.Selenium.WebDriverException' occurred in WebDriver.dll Additional information: Cannot find Firefox binary in PATH or default install locations. Make sure Firefox is installed. OS appears to be: Vista
我想知道这是为什么重新安装FireFox的人重新开始工作?
某处必须有一组注册表项或环境变量来查找FireFox的ApplicationStartupPath。你可以看到一些这些路径在此的ProcessMonitor跟踪:
在上面的截图中可以看到应用程序(AstrobLabe)我使用运行此行代码:
using (IWebDriver driver = new FirefoxDriver(ffprofile))
它会导致对于Firefox V48搜索和寻找在错误的目录:
C:\ Program Files文件(x86)的\ Mozilla Firefox的\ FireFox.exe
在我的系统Firefox是安装在:
C:\ Program Files文件(x86)的\ Mozilla的\火狐\ FireFox.exe
反正发现和纠正这个问题(无法找到Firefox的二进制在PATH或默认安装位置)是为其他人修复的,我只是将Firefox目录复制到Mozilla FireFox。
但随后又回到了原来的错误:
An unhandled exception of type 'OpenQA.Selenium.WebDriverException' occurred in WebDriver.dll Additional information: Failed to start up socket within 45000 milliseconds. Attempted to connect to the following addresses: 127.0.0.1:7055
解决方案
那时,我发现这个答案,说,FireFox的V46可与硒2.53传来: Which Firefox version is compatible with Selenium 2.53.0?
当我降级我看到FFv46安装到:
C:\ Program Files(x 86)\ Mozilla Firefox的\ FireFox.exe
因此请确保安装FF是在这个位置 - 这基础上的ProcessMonitor微量硒找不到:
C:\ Program Files文件(x86)的\ Mozilla的\ Firefox \ FireFox.exe
这也适用于我。必须有点常见。 –
我的测试工作在我的盒子上,但没有在另一个盒子上工作,另一个盒子有一个新版本的Firefox,并失败,出现上述错误消息。我升级了Selenium网络驱动程序(没有从NuGet中获得),现在另一个工作正常。 –