FirefoxDriver调用firefox浏览器的安装路径应为C盘的默认目录下,若firefox安装在其他目录下执行时会报错:
Cannot find firefox binary in PATH. Make sure firefox is installed. OS appears to be: XP
Build info: version: ’2.25.0′, revision: ’17482′, time: ’2012-07-18 21:09:54′
System info: os.name: ‘Windows XP’, os.arch: ‘x86′, os.version: ’5.1′, java.version: ’1.6.0_10′
这是因为找不到firefox的原因。
解决办法:
1.重新安装firefox在默认路径下;
OS Expected Location of Firefox
Linux firefox (found using “which”)
Mac /Applications/Firefox.app/Contents/MacOS/firefox
Windows %PROGRAMFILES%\Mozilla Firefox\firefox.exe
2.直接用System.setProperty方法设置webdriver.firefox.bin的值
package selenium.test.googleSearch;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.*;
public class BaiduFirefoxDriver {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
System.setProperty("webdriver.firefox.bin", "D:\\Program Files\\Mozilla Firefox\\firefox.exe");
WebDriver driver=new FirefoxDriver();
driver.get("http://www.baidu.com/");
}
}
3.利用setCapability进行设置
package selenium.test.googleSearch;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.*;
import org.openqa.selenium.remote.DesiredCapabilities;
public class BaiduFirefoxDriver {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
DesiredCapabilities capability=DesiredCapabilities.firefox();
capability.setCapability("firefox_binary",
"D:\\Program Files\\Mozilla Firefox\\firefox.exe");
WebDriver driver = new FirefoxDriver(capability);
driver.get("http://www.baidu.com/");
}
}
4.用FirefoxBinary类和public FirefoxDriver(FirefoxBinary binary, FirefoxProfile profile)这个构造方法
package selenium.test.googleSearch;
import java.io.File;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.*;
public class BaiduFirefoxDriver {
public static void main(String[] args) {
// TODO Auto-generated method stub
File pathToFirefoxBinary = new File("D:\\Program Files\\Mozilla Firefox\\firefox.exe");
FirefoxBinary firefoxbin = new FirefoxBinary(pathToFirefoxBinary);
WebDriver driver = new FirefoxDriver(firefoxbin,null);
driver.get("http://www.baidu.com/");
}
}
原文链接:http://aitawo.com/2013/02/16/%e4%bd%bf%e7%94%a8firefoxdriver%e6%97%b6%e6%8a%a5%e9%94%99make-sure-firefox-is-installed%e9%97%ae%e9%a2%98/ | @wo 高凯的博