Ale*_*lex 14 java internet-explorer automated-tests selenium-webdriver internet-explorer-11
我正在尝试使用Selenium WebDriver在Internet Explorer 11上运行测试.代码是:
System.setProperty("webdriver.ie.driver", "Path/to//IEDriverServer.exe");
WebDriver driver = new InternetExplorerDriver();
driver.get("www.google.com");
driver.findElement(By.name("q"));
Run Code Online (Sandbox Code Playgroud)
我收到这个错误:
入门InternetExplorerDriver服务器(64位)2.46.0.0线程"main" org.openqa.selenium.NoSuchWindowException端口43760异常听力:无法找到关闭的窗口元素(警告:服务器未提供任何信息栈跟踪)命令持续时间或超时:15毫秒构建信息:版本:'2.46.0',修订版:'61506a4624b13675f24581e453592342b7485d71',时间:'2015-06-04 10:22:50'系统信息:主机:'user1-PC',ip:' 10.0.23.71',os.name:'Windows 7',os.arch:'amd64',os.version:'6.1',java.version:'1.8.0_45'驱动程序信息:org.openqa.selenium.ie. InternetExplorerDriver能力[{browserAttachTimeout = 0,enablePersistentHover =真,ie.forceCreateProcessApi =假,pageLoadStrategy =正常,ie.usePerProcessProxy =假,ignoreZoomSetting =假,handlesAlerts =真,版本= 11,平台= WINDOWS,nativeEvents =真,即. ensureCleanSession = false,elementScrollBehavior = 0,ie.browserCommandLineSwitches =,requireWindowFocus = false,browserName = internet explorer,initi alBrowserUrl = http:// localhost:43760 /,takesScreenshot = true,javascriptEnabled = true,ignoreProtectedModeSettings = false,enableElementCacheCleanup = true,cssSelectorsEnabled = true,unexpectedAlertBehaviour = dismiss}]会话ID:8a5b7ab5-862a-462d-ab4b-929d4ed5b71a***元信息:{使用=名称,值= q}在sun.reflect.NativeConstructorAccessorImpl.newInstance0(本机方法)在sun.reflect.NativeConstructorAccessorImpl.newInstance(来源不明)在sun.reflect.DelegatingConstructorAccessorImpl.newInstance(来源不明)在java.lang.reflect.Constructor.newInstance(来源不明)在org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:204)在org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:156 )在org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:605)在org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:358)在org.openqa.selenium.remote.RemoteWebDriver. findElementByName(RemoteWebDriver 的.java:431)在org.openqa.selenium.By $ ByName.findElement(By.java:300)在org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:350)在MySel20Proj.MySel20Proj.App.主(App.java:42)
我尝试按照https://code.google.com/p/selenium/wiki/InternetExplorerDriver上的配置教程进行操作,但仍然无法正常工作.此代码适用于Firefox和Chrome.
有两种方式:
方法1:设置INITIAL_BROWSER_URL:
File ieFile = new File("D:\\IEDriverServer_x64_2.53.0\\IEDriverServer.exe");
System.setProperty("webdriver.ie.driver", ieFile.getAbsolutePath());
DesiredCapabilities ieCaps = DesiredCapabilities.internetExplorer();
ieCaps.setCapability(InternetExplorerDriver.INITIAL_BROWSER_URL, "http://www.bing.com/");
driver = new InternetExplorerDriver(ieCaps);
//some operations on that site
driver.findElement(By.id("sb_form_q")).clear();
driver.findElement(By.id("sb_form_q")).sendKeys("Ripon Al Wasim");
driver.findElement(By.id("sb_form_go")).click();
Run Code Online (Sandbox Code Playgroud)
方法2:在目标计算机上设置注册表项:
仅对于IE 11,您需要在目标计算机上设置注册表项,以便驱动程序可以维护与其创建的Internet Explorer实例的连接.
对于32位Windows:您必须在注册表编辑器中检查的密钥是HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BFCACHE.
对于64位Windows:密钥是HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BFCACHE.
请注意,FEATURE_BFCACHE子项可能存在也可能不存在,如果不存在,则应创建该子项.要点:在此项中,创建名为iexplore.exe的值为0的DWORD值.
有关详细信息,请访问:https: //github.com/SeleniumHQ/selenium/wiki/InternetExplorerDriver#required-configuration
| 归档时间: |
|
| 查看次数: |
32443 次 |
| 最近记录: |