Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在应用程序已关闭浏览器时退出webdriver_Java_Selenium Webdriver - Fatal编程技术网

Java 如何在应用程序已关闭浏览器时退出webdriver

Java 如何在应用程序已关闭浏览器时退出webdriver,java,selenium-webdriver,Java,Selenium Webdriver,我正在使用seleniumwebdriver(IE)测试web应用程序。注销后,应用程序关闭浏览器,但退出webdriver会导致IEDriverServer.exe的崩溃弹出窗口,从而挂起流 是否有一种方法可以在浏览器关闭后卸载IEDriverServer.exe?您可以通过多种方式处理此问题。我能想到的一个逻辑是执行getWindowHandles()并根据窗口计数调用driver.quit()。在您注销后的情况下,它将为空。不知道确切的解决方案,但是,对于解决方法,您可以尝试以下方法: 使

我正在使用
seleniumwebdriver(IE)
测试web应用程序。注销后,应用程序关闭浏览器,但退出webdriver会导致
IEDriverServer.exe的崩溃弹出窗口,从而挂起流


是否有一种方法可以在浏览器关闭后卸载
IEDriverServer.exe

您可以通过多种方式处理此问题。我能想到的一个逻辑是执行getWindowHandles()并根据窗口计数调用driver.quit()。在您注销后的情况下,它将为空。

不知道确切的解决方案,但是,对于解决方法,您可以尝试以下方法:

  • 使用
    driver.close()
  • 如果第一个选项不起作用,请再次打开浏览器并使用
    driver.quit()
    driver.close()

  • 我以前的版本有这个问题,你用的是哪个版本?IEServerDriver的版本可能比您现有的版本更新。我将我的文件放在一个目录中,然后将其添加到系统路径,Chromedriver或IEServerDriver没有问题。

    当我调用driver.quit时,句柄列表已经为空(size=0),任何驱动程序方法(除了quit)都会导致“无法获取浏览器”异常。获取句柄,然后调用driver.quitdriver.close()不会关闭IEDriverServer.exe,您需要执行驱动程序。请退出()。其次,如果对象已被销毁,则driver.close()将出错,而driver.quit()则不会。基本上总是使用driver.quit(),这样更安全、更可靠。