InternetExplorer
|
|
直接运行会报错,的错处理如下:
需要设置IE的Driver到“webdriver.ie.driver”变量中,否则可能遇到报错信息:
因为在IE中测试需要IEDriverServer.ext的支持,从官网下载,区分64位和32分,将这个路径赋值给webdriver.ie.driver
如果IE浏览器设置安全性较高,在“Internet Options”中都不要选择“Enable Protected Mode”(保护模式),否则可能遇到如下的错误提示
解决方法有两种,一种是修改掉IE的设置,不要在任何情况下使用保护模式(protected mode),另一种即是在运行时设置IE的Capabilities。
最终代码如下
Chrome
在Chrome浏览器上运行测试脚本,首先需要下载ChromeDriver.exe
按操作系统区分
chromedriver_win32
chromedriver_mac32
chromedriver_linux64
设置变量 “webdriver.chrome.driver”为对应的路径
Firefox
Firefox是默认安装路径,webdriver可以正常访问找到它。
如果非默认路径,需要设置下
常见问题
sendKeys在IE下输入英文或者数字会很慢
现象:sendKeys在IE下输入英文或者数字会很慢,中文者不会。而在Firefox下则完全没有这个问题
处理: 参考 http://stackoverflow.com/questions/8790420/how-to-speed-up-sendkeys-in-internet-explorer-when-using-selenium-webdriver-2
采用第二种方法用javascript方式 解决
对于日期型选择输入控件不可以直接输入的处理
|
|
报错ElementNotVisibleException
driver.findElement(By.id(“inlineCheckbox2”)).click();
在IE下无法对隐藏元素调用click()方法,否则会报错ElementNotVisibleException
解决的方法有两种:
- 把隐藏元素先给显示出来再赋值
- 用javascript方式
注:在已加载了JQuery的页面上可以直接使用JQuery选择器,进行元素的操作