Selenium 2.0 远程 Web 驱动程序无法使用 C# 启动 IEDriver
本文关键字:启动 IEDriver 远程 Web 驱动程序 Selenium | 更新日期: 2023-09-27 18:28:00
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(这让我想路径配置是否有问题,或者某些安全限制(
请注意,中心和节点是同一台计算机。
当我执行测试时,我得到:
"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]
我正在运行这台机器,既充当集线器又充当节点,只是为了证明它对我有用的概念。
关于你想要完成的事情的方法,我会质疑很多事情。首先,如果您在与远程 Java 服务器(节点/集线器(相同的计算机上运行 C# 代码,为什么还要麻烦呢?您可以轻松地只使用 InternetExplorerDriver
类并完全消除 Java 服务器。
其次,设置环境变量与设置 Java 系统属性不同。通过在用于启动 Java .jar的命令行上使用 -D
命令行标志来设置 system 属性。
最后,如果您实际上在与 C# 代码不同的计算机上运行 Java 服务器,并且正确使用了 RemoteWebDriver
,请记住,您需要在运行 Java 服务器的计算机上运行 IEDriverServer.exe
,而不是运行 C# 代码的计算机上。此外,需要中心/节点知道该计算机上可执行文件的路径,而不是运行 C# 代码的可执行文件的路径。
我已经解决了它,使用了适当的IEDriver版本并修复了PATH,它起作用了。