当前位置: 首页 > 知识库问答 >
问题:

Selenium:org.openqa.selenium.noSuchWindowException:当前聚焦的窗口已关闭

程彭祖
2023-03-14
  1. System.SetProperty(“webdriver.ie.driver”,“D:\selenium\jars\iedRiverServer\iedRiverServer.exe”);
  2. WebDriver驱动程序=新建InternetExplorerDriver();
  3. driver.manage().timeouts().implicitlywait(30,TimeUnit.seconds);
  4. driver.get(“http://the-internet.herokuapp.com”);
  5. Driver.FindElement(By.LinkText(“忘记密码”))。Click();
  6. 线程.睡眠(3000);
  7. driver.findElement(by.id(“email”)).sendkeys(“testmail@mail.com”);

当我运行上面的代码时,它在chrome和firefox中运行良好,但当我使用IE运行时,它在运行第7步时抛出以下错误,不明白它在IE中不工作。

有谁能帮我解决这个问题吗。提前致谢

Nov 20 2017 2:58:39 PM org.openqa.selenium.remote.errorCodes to status Info:HTTP status:“404”->“no such window”的JSON状态映射不正确(应为400)

nosuchWindowException:当前焦点窗口已关闭。构建信息:版本:“3.6.0”,修订版:“6FBF3EC767”,时间:“2017-09-27T15:28:36.4Z”html" target="_blank">系统信息:主机:“ml-sivakumars-p”,IP:“192.168.12.159”,OS.Name:“Windows 7”,OS.arch:“amd64”,OS.Version:“6.1”,java.Version:“1.8.0_121”驱动程序信息:org.openqa.selenium.ie.InternetExplorerDriver Capabilities[{proxy=proxy(),AcceptinSecureCerts=false,d,value=电子邮件}

at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at org.openqa.selenium.remote.http.W3CHttpResponseCodec.createException(W3CHttpResponseCodec.java:185)
at org.openqa.selenium.remote.http.W3CHttpResponseCodec.decode(W3CHttpResponseCodec.java:120)
at org.openqa.selenium.remote.http.W3CHttpResponseCodec.decode(W3CHttpResponseCodec.java:49)
at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:164)
at org.openqa.selenium.remote.service.DriverCommandExecutor.execute(DriverCommandExecutor.java:83)
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:586)
at org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:356)
at org.openqa.selenium.remote.RemoteWebDriver.findElementById(RemoteWebDriver.java:402)
at org.openqa.selenium.By$ById.findElement(By.java:218)
at org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:348)
at com.org.learning.tests.TestDayTwo.firstTest(TestDayTwo.java:38)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:108)
at org.testng.internal.Invoker.invokeMethod(Invoker.java:661)
at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:869)
at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1193)
at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:126)
at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:109)
at org.testng.TestRunner.privateRun(TestRunner.java:744)
at org.testng.TestRunner.run(TestRunner.java:602)
at org.testng.SuiteRunner.runTest(SuiteRunner.java:380)
at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:375)
at org.testng.SuiteRunner.privateRun(SuiteRunner.java:340)
at org.testng.SuiteRunner.run(SuiteRunner.java:289)
at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)
at org.testng.TestNG.runSuitesSequentially(TestNG.java:1301)
at org.testng.TestNG.runSuitesLocally(TestNG.java:1226)
at org.testng.TestNG.runSuites(TestNG.java:1144)
at org.testng.TestNG.run(TestNG.java:1115)
at org.testng.IDEARemoteTestNG.run(IDEARemoteTestNG.java:72)
at org.testng.RemoteTestNGStarter.main(RemoteTestNGStarter.java:123)

共有1个答案

宗项禹
2023-03-14

从昨天开始,我就一直在努力解决同样的问题,终于让我的测试工作了。
检查一下您是否拥有InternetExplorerDriver所需的所有配置。对我来说,这是保护模式设置,我最终测试,即使我是在win10。
希望它对你也有帮助。

 类似资料:
  • 本文向大家介绍javascript在当前窗口关闭前检测窗口是否关闭,包括了javascript在当前窗口关闭前检测窗口是否关闭的使用技巧和注意事项,需要的朋友参考一下 在当前窗口关闭前,检测当前窗口是否关闭 在ie9中,如果刷新文档的话,unloadform和onbeforeunload都会执行,如果是关闭页面的话只会执行onbeforeunload事件 值得注意的是,onunload在关闭页面时

  • 问题内容: 我的项目包括Selenium Webdriver,JAVA,Maven,TestNG,Jenkins,Allure(报告)。我有几套包含100多个测试用例的测试,并通过3种不同的浏览器进行了迭代(测试使用TestNG并行运行)。 除非我实际上正在观察窗口并查看测试运行,否则无法通过一项测试。 我将解释: 我要测试什么? 我们的JS开发人员创建了一项功能,仅当用户将焦点放在窗口上时,图像

  • 我正试图打开一个弹出身份验证对话框的ftp页面。我正在使用Robot类的Keypress事件输入身份验证细节。但是在这里,如果焦点不在那个弹出窗口上,那么它在另一个处于焦点中的窗口中键入身份验证详细信息。由于这个弹出窗口不是web元素,我不能使用driver.switchto().window(),因为这里我需要传递windowhandle,我没有得到它。如果我可以点击驱动程序窗口,我的焦点将转移

  • 所以我的问题是:我通常把我的笔记本电脑连接到外部屏幕上,一切正常,直到我需要把我的笔记本电脑带到大学去做进度报告。当我的笔记本电脑没有连接到外部屏幕时,imshow显示的窗口在底部被切断,如图所示。 以前有人遇到过这个问题吗?如果有,你能分享如何解决这个问题吗?我的笔记本电脑使用windows 10,python 3.6.4和opencv 3.3.0。 我当前的代码有点长,所以我将在这里给出流程:

  • 问题内容: 我需要将注意力集中在指定的窗口上,而我头上看到的唯一方法是将其前面的所有窗口最小化,直到找到正确的窗口为止。 我该怎么做? Windows 7,没有特定的工具包…。 每种类型的窗口,例如,firefox和控制台命令 问题答案: 您需要通过窗口枚举并匹配窗口标题才能获得所需的窗口。下面的代码搜索标题为“ firefox”的窗口并设置焦点: 为了最小化窗口,下面的行:

  • 我正在IE上测试。单击后,我切换到子窗口,但无法返回父窗口,出现错误“窗口已关闭”。