当我尝试在Selenium IDE中使用Webdriver播放运行测试时,我继续遇到以下错误。
Caused by: org.openqa.selenium.WebDriverException: Cannot find firefox binary in PATH. Make sure firefox is installed. OS appears to be: VISTA
Build info: version: ’2.32.0′, revision: ’6c40c18′, time: ’2013-04-09 17:22:56′
System info: os.name: ‘Windows 7′, os.arch: ‘amd64′, os.version: ’6.1′, java.version: ’1.6.0_39′
Driver info: driver.version: FirefoxDriver
at org.openqa.selenium.firefox.internal.Executable.(Executable.java:72)
at org.openqa.selenium.firefox.FirefoxBinary.(FirefoxBinary.java:59)
at org.openqa.selenium.firefox.FirefoxBinary.(FirefoxBinary.java:55)
at org.openqa.selenium.firefox.FirefoxDriver.getBinary(FirefoxDriver.java:175)
at org.openqa.selenium.firefox.FirefoxDriver.(FirefoxDriver.java:100)
… 14 more
错误提到没有在PATH中找到firefox二进制文件。我在路径中更新了Firefox二进制文件,但仍然收到相同的错误消息。测试用例中使用的函数是一个自定义案例和waitforelementpresent。
这是我在路径C中的变量值:\ Program Files(x86)\ Firefox ESR 17
我该如何解决这个问题?
答案 0 :(得分:5)
我更新了环境变量路径,但它对我不起作用。不要在最后添加firefox.exe,例如E:\ installed \ Firefox Mozilla。并重启日食。它对我有用。
答案 1 :(得分:2)
我也遇到了同样的问题。最后,我通过设置功能中的二进制值来解决它,如下所示。在运行时,它使用此值,因此必须设置。
DesiredCapabilities capability = DesiredCapabilities.firefox();
capability.setCapability("platform", Platform.ANY);
capability.setCapability("binary", "/ms/dist/fsf/PROJ/firefox/16.0.0/bin/firefox"); //for linux
//capability.setCapability("binary", "C:\\Program Files\\Mozilla Firefox\\msfirefox.exe"); //for windows
WebDriver currentDriver = new RemoteWebDriver(new URL("http://localhost:4444/wd/hub"), capability);
你完成了!快乐的编码:)
答案 2 :(得分:0)
将包含exe文件名称的整个路径添加到路径中。
C:\Program Files (x86)\Firefox ESR 17\firefox.exe
答案 3 :(得分:0)
我也遇到了同样的问题,但不知怎的,我已解决了这个问题,
这些更改使我的代码在我的案例中完美无缺
答案 4 :(得分:0)
在selenium中,如果您使用的是chrome驱动程序,那么org。 openqa。硒。 WebDriverException主要显示chrome发布新的chrome驱动程序的时间。因此,请尝试使用最新的Chrome驱动程序,并检查问题是否已解决。
答案 5 :(得分:0)
只需指定路径:
System.setProperty("webdriver.firefox.bin", "C:\\Program Files\\Mozilla Firefox\\firefox.exe");
这将解决问题。