Selenium Webdriver启动IE、Chrome、Firefox三大浏览器进行测试
最近一直在学习Selenium Webdriver,在学习多浏览器测试时,遇到了不少问题,参考了不少前辈的博客和书籍,作为一个新手+菜鸟,在此对学习的一些过程进行总结分享,欢迎大家批评指正。
我使用的版本是:win7 64位、selenium-2.53.0、Firefox42.0、Chrome 50.0.2661(公司的浏览器版本比较老,不能自己安装)
一、Selenium Webdriver启动IE
(参考http://blog.csdn.net/zyl26/article/details/51011073,selenium官方文档)
注意IEDriverServer的版本号一定要和你所使用的Selenium版本一致。
2、更改IE的安全设置,使四个区域的保护模式保持一致,要么全部勾选,要么不勾选。
3、在IE选项设置中的高级选项中,取消增强保护模式
4、IE11需要修改注册表,win+R -> regedit
32位的windows,key值为:
64位的windows,key值为:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet
Explorer\Main\FeatureControl\FEATURE_BFCACHE
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet
Explorer\Main\FeatureControl\FEATURE_BFCACHE
我新建了一个FEATURE_BFCACHE的key值,内部创建一个iexplorer.exe,DWORD类型,值为0。
5、更改IE的缩放比例必须为100%
如果不改缩放比例,测试程序启动时会报错。
6、64位的IEDriver驱动速度慢
上述步骤都完成之后,发现使用64位的IEDriver驱动,对浏览器的页面元素的操作速度特别慢,网上查了下,换成了32位的IEDriver驱动,速度变快了。
二、Selenium Webdriver启动Chrome
1、Chromedriver和Chrome的版本存在映射关系,如果版本不一致,启动程序会报错。
感谢前辈总结如下版本映射表,提供了很大的帮助。
selenium之 chromedriver与chrome版本映射表
// 加载chrome浏览器驱动
System.setProperty("webdriver.chrome.driver", "C:\\chromedriver.exe");
// 添加chrome二进制文件
ChromeOptions options = new ChromeOptions();
options.setBinary("C:\\WorkSpace\\Chrome\\50.0.2661.102\\chrome.exe");
driver = new ChromeDriver(options);
selenium2启动Firefox不需要下载连接浏览器的驱动文件,Firefox安装的时候路径不是默认路径,只需要添加Firefox二进制文件的路径。
// 添加firefox二进制文件
System.setProperty("webdriver.firefox.bin","C:\\WorkSpace\\Tools\\FireFox\\firefox.exe");
上一篇: 抠门男友,真是笑疯我了