2014-10-28 66 views
0
DesiredCapabilities capabilities = DesiredCapabilities.InternetExplorer(); 
System.Environment.SetEnvironmentVariable("webdriver.ie.driver", @"C:\\IEDriverServer.exe"); 
instance = new RemoteWebDriver(new Uri("http://localhost:4444/wd/hub"), capabilities); 

我也有一个系统变量设置,并且IEDriverServer是在系统路径中。我无法从命令行运行IEDriver(这让我想到路径配置有些问题,或者有些安全限制)Selenium 2.0远程网络驱动程序无法启动IEDriver与C#

请注意,集线器和节点是同一台机器。

当我执行的测试中,我得到:

"System.InvalidOperationException: 
The path to the driver executable must be set by the webdriver.ie.driver system property; for m....."![enter image description here][1] 

我跑这个一体机既充当枢纽和节点只是为了让一个概念证明它会为我工作。

回答

0

我已经解决了,使用了合适的版本IEDriver,并修复了PATH,它工作。

0

有很多事情我会质疑你对待你想要完成的方法。首先,如果您在与远程Java服务器(节点/集线器)相同的机器上运行C#代码,为什么要麻烦?您可以轻松使用InternetExplorerDriver类,并完全取消Java服务器。

其次,设置环境变量为而不是与设置Java系统属性相同。您可以通过在启动Java .jar的命令行上使用-D命令行标志来设置系统属性。最后,如果您实际上是在与C#代码不同的计算机上运行Java服务器,并且正确使用RemoteWebDriver,请记住在运行Java服务器的计算机上需要IEDriverServer.exe,而不是运行在运行Java服务器的计算机上的IEDriverServer.exe你的C#代码。此外,您需要集线器/节点知道该计算机上可执行文件的路径,而不是运行C#代码的可执行文件的路径。

+0

嗨吉姆,谢谢你的回答。 是的,这是C#绑定,我在一台机器上运行所有东西,只是为了证明它对我有用。 – 2014-10-28 12:11:07

相关问题