java环境安装Firefox驱动/IE驱动

FireFox:

1、检查本地Firefox浏览器的版本

2、去官网下载对应版本的驱动

Change Log :https://github.com/mozilla/geckodriver/blob/release/CHANGES.md

Firefox各版本: http://ftp.mozilla.org/pub/firefox/releases/

Firefox驱动镜像网址 :https://npm.taobao.org/mirrors/geckodriver/

建议大家使用57版本的Firefox。

Firefox与geckodriver对应版本说明:

 java环境安装Firefox驱动/IE驱动

3、下载驱动,把该驱动放到工程目录下(test的resources下),如没有则在test目录下新建一个resources的文件夹,在文件夹下双击resource

java环境安装Firefox驱动/IE驱动

 4、设置驱动路径

System.setProperty("webdriver.gecko.driver","src\test\resources\geckodriver.exe");

IE:

1、IE浏览器的驱动跟着Selenium版本走即可,比如当前项目使用的Selenium是V3.141.59,那么去Selenium 的镜像网址下载对应版本的IEDriverServer驱动即可(建议使用32位的);

https://npm.taobao.org/mirrors/selenium

2、下载驱动,把该驱动放到工程目录下(test的resources下),如没有则在test目录下新建一个resources的文件夹,在文件夹下双击resource

3、设置驱动路径

System.setProperty("webdriver.ie.driver","src\test\resources\IEDriverServer.exe");

  

 安装过程可能遇到问题的解决办法:

1、firefox火狐浏览器去完成自动化测试时,代码报了如下错误:Cannot find firefox binary in PATH. mark sure firefox is installed

错误原因:firefox安装在其它路径,不是默认的安装路径

解决办法:指定firefox可执行文件路径:webdriver.firefox.bin

代码设置:

System.setProperty("webdriver.firefox.bin", "D:\Program Files\MozillaFirefox\firefox.exe");

2、使用selenium3.x+firefox火狐浏览器去完成自动化测试时,代码报了如下错误:The path to the driver executable must be set by the webdriver.gecko.driver system properity

错误原因:缺少火狐浏览器驱动包。如果selenium版本是3.x的,需要使用驱动包

解决办法:往项目中添加火狐驱动包,并加载驱动的配置。至于该驱动版本适配的浏览器和selenium版本在驱动的 change log里有说明(如:使用selenium 3.5.1+firefox 56)

代码设置:

System.setProperty("webdriver.gecko.driver","src/test/resources/geckodriver.exe");

3、使用IE浏览器去完成自动化测试时,代码报了如下错误: The path to the driver executable must be set by the webdriver.ie.driver system property

错误原因:缺少IE浏览器驱动包

解决办法:往项目中添加IE驱动包,并加载驱动的配置

代码设置:

System.setProperty("webdriver.ie.driver", "src/test/resources/IEDriverServer.exe");

下载地址:http://www.seleniumhq.org/download/

IE驱动版本与Selenium版本保持相同即可

http://selenium-release.storage.googleapis.com/index.html

4、使用IE浏览器去完成自动化测试时,代码报了如下错误:Protected Mode Settings are not the same for all zones

解决方法1: 浏览器设置(但是换一台电脑就不适用了) 打开IE浏览器->工具->安全->全部勾选启用保护模式

解决方法2: 忽略浏览器保护模式的设置 InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS

代码:

//取消IE安全设置(忽略IE的Protected Mode的设置)
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURI
TY_DOMAINS, true);

5、使用IE浏览器去完成自动化测试时,代码报了如下错误: Browser zoom level was set to 125%.It should be set to 100%

错误原因:浏览器缩放级别设置不对导致的(点工具栏页面->缩放设置)

解决办法:忽略此设置:InternetExplorerDriver.IGNORE_ZOOM_SETTING

代码:

DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability(InternetExplorerDriver.IGNORE_ZOOM_SETTING, true);

6、使用IE浏览器去完成自动化测试时,代码报了如下错误:unable to find element with id -- kw

错误原因:不是因为没有设置等待时间,而是因为之前的window对象已经丢失

解决办法:最快的解决办法是直接指定一个初始化页面 InternetExplorerDriver.INITIAL_BROWSER_URL

代码:

DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability(InternetExplorerDriver.INITIAL_BROWSER_URL,"http://www.baidu.com");