1.通用注意事项
- 由于chromedriver.exe与msedgedriver.exe需要与本地浏览器版本一致,而不同电脑上的浏览器版本可能不一致,这时使用WebDriverManager来自动下载chromedriver是比较好的解决办法。
WebDriverManager.chromedriver().setup(); -
当使用java.awt.Robot来模拟键盘操作时,需要设置环境变量java.awt.headless=false或者如下设置: //Headless模式是系统的一种配置模式。在系统可能缺少显示设备、键盘或鼠标这些外设的情况下可以使用该模式。
System.setProperty("java.awt.headless", "false"); -
-
2.使用IEDriverServer的注意事项
- IEDriverServer的版本要与Selenimu的版本一致;
- IEDriverServer的32位版本更稳定,不管Windows操作系统s是32位还是64位,尽量使用32位版本;
- 在使用前,需要在程序中定位IEDriverServer的位置;如下java配置:
System.setProperty("webdriver.ie.driver", "D:\\BrowserDriver\\IEDriverServer.exe"); - Internet设置的安全设置,4个区域的启用保护模式设置一致,全启用或全取消;
- Internet设置的高级设置中,取消“启用增强保护模式”;
- IE浏览器的运行速度相对于火狐和chrome等其它浏览器来说,速度要慢,所以更容易遇到“NoSuchElementFound”的异常,在对元素定位时尽量使用CSS Selector,在自动化测试中尽量使用火狐或谷歌做为默认的主测浏览器;
- 有些电脑,在初次启动IE时,会有一个防火墙的弹窗提示,选择允许,再次运行脚本即可;
-
E浏览器的缩放比率(zoom level)要是默认的100%,否则要报下面类似的错误: Exception in thread "main" org.openqa.selenium.SessionNotCreatedException: Unexpected error launching Internet Explorer. Browser zoom level was set to 130%. It should be set to 100%
-
其他...
参考:
- 《解决Selenium 调用IEDriverServer打开IE浏览器》
- 《使用Selenium启动IE浏览器》
|