1.异常"Exception in thread "main" org.openqa.selenium.WebDriverException: Cannot find firefox binary in PATH"的解决方案
原因:只引用了selenium java client的jar包,还需要引用一下webdriver里面的那个standalone的jar包。现在最新的版本是selenium-server-standalone-2.16.1.jar
2.异常"Exception in thread "main" org.openqa.selenium.WebDriverException: Cannot find firefox binary in PATH"的解决方案
看这个报错应该是firefox安装路径不是默认路径。
解决方法:
方法1、最简单的重新安装firefox到默认路径。
方法2、直接用System.setPropert方法设置webdriver.firefox.bin的值,如
- System.setProperty("webdriver.firefox.bin","D:\\Program Files\\Mozilla Firefox\\firefox.exe");
方法3、 用FirefoxBinary类和public FirefoxDriver(FirefoxBinary binary, FirefoxProfile profile)这个构造方法,直接上代码
- File pathToFirefoxBinary = new File("D:\\Program Files\\Mozilla Firefox\\firefox.exe");
- FirefoxBinary firefoxbin = new FirefoxBinary(pathToFirefoxBinary);
- WebDriver driver = new FirefoxDriver(firefoxbin,null);//这里使用这个构造方法。
应该还可以在环境变量里面设置firefox的路径也可以,有兴趣的可以试一下。
注:有人可能会不知道webdriver.firefox.bin,可以看一下源码,其中
org.openqa.selenium.firefox.internal.Executable.locateFirefoxBinaryFromSystemProperty()
方法第一句
- String binaryName = System.getProperty("webdriver.firefox.bin");
说明默认的时候取的就是这个值,重新设置一下。