-----------------------------------------Firefox-----------------------------------------------------
1.Firefo版本选择-----这里建议安装56,问题会比较少点
各个版本下载:http://ftp.mozilla.org/pub/firefox/releases/
下载的时候,注意选择语言(zh-CN)
2.Firefox安装路径问题---默认安装在c盘(我是自定义安装)
firefox浏览器去完成自动化测试时,代码报错:没有找到firefox的可执行文件,请确认是否安装firefox
Cannot find firefox binary in PATH. Make sure firefox is installed.
错误原因:
firefox安装在其他路径,没有在默认路径(默认是C盘)
解决办法:
指定firefox可执行文件的路径:webdriver.firefox.bin
System.setProperty("webdriver.firefox.bin","D:\\Firefox2\\firefox.exe");
3.firefox驱动安装---geckodriver版本选择:
selenium版本------geckodriver版本-------Firefox版本
3.3-----------------------0.15--------------------V48+
3.4-----------------------0.16--------------------V52
3.4-----------------------0.17---------------------v52
3.4-----------------------0.18---------------------V53
3.5-----------------------0.19---------------------V55
3.11---------------------0.21----------------------V57
Firefox驱动:https://github.com/mozilla/geckodriver/releases
Firefox驱动镜像:https://npm.taobao.org/mirrors/geckodriver
驱动下载解压,放在项目的resource目录下
总结:
从selenium3.0.0开始要求Firefox为48及以上版本
selenium3.x使用的Java版本为jdk1.8
selenium3.x使用geckodriver作为Firefox浏览器的驱动替代
firefox驱动问题:
使用selenium3.x+firefox火狐浏览器完成自动化测试时,代码报错:
The path to the driver executable must be set by the webdriver.gecko.driver system property;
错误原因:
缺少火狐浏览器驱动包,如果selenium版本是3.x,需要使用驱动包(geckodriver)
解决办法:
往项目中添加浏览器驱动包,并加载驱动的配置,至于该驱动版本适配的浏览器和selenium 版本在驱动的版本 chang log里有说明
Change log:https://raw.githubusercontent.com/SeleniumHQ/selenium/master/java/CHANGELOG
(如:使用selenium3.5.1+firefox56)
代码设置:
System.setProperty("webdriver.gecko.driver", "src/test/resources/geckodriver.exe");
4.Firefox浏览器环境搭建---完整代码如下:
package com.lemon.webtest;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
public class firstWebTest {
public static void main(String[] args) {
openFirefox();
}
public static void openFirefox() {
//1.设置Firefox可执行文件路径
System.setProperty("webdriver.firefox.bin","D:\\Firefox2\\firefox.exe");
//2.设置Firefox驱动路径
System.setProperty("webdriver.gecko.driver", "src/test/resources/geckodriver.exe");
//
//3.打开firefox
FirefoxDriver firefoxDriver=new FirefoxDriver();
//4.打开百度url
firefoxDriver.get("http://www.baidu.com");
}
public static void openChrome() {
// 1.设置chromedriver驱动文件的路径
System.setProperty("webdriver.chrome.driver", "src/test/resources/chromedriver.exe");
// 2.打开浏览器
ChromeDriver chromeDriver = new ChromeDriver();
// 3.找到百度url
chromeDriver.get("http://www.baidu.com");
// 4.退出浏览器即关闭浏览器
// quit是退出浏览器,close是只关闭当前打开的窗口,不等于关闭整个浏览器
chromeDriver.quit();
}
}