多くのchromedriver.exeがWindowsにハングアップしたままに– Selenium
Selenium WebDriverは閉じていますが、「chromedriver.exe」プロセスはシステムにハングアップしたままです。 図を参照してください:
問題
これはURLをロードする簡単なWebDriverの例であり、存在しますが、chromedriver.exeは決して殺されません。
LoadWebPageExample.java
package com.example.test; import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; import org.openqa.selenium.chrome.ChromeOptions; import org.openqa.selenium.remote.DesiredCapabilities; public class LoadWebPageExample { public static void main(String[] args) { System.setProperty("webdriver.chrome.driver", "D:\\chromedriver.exe"); ChromeOptions options = new ChromeOptions(); options.addArguments("window-size=800,600"); DesiredCapabilities capabilities = DesiredCapabilities.chrome(); capabilities.setCapability(ChromeOptions.CAPABILITY, options); WebDriver driver = new ChromeDriver(capabilities); driver.get("http://google.com/"); driver.close(); } }
溶液
これはよくある間違いです。これを解決するには、driver.quit()
を使用して自動テストを終了します。
LoadWebPageExample.java
package com.example.test; import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; import org.openqa.selenium.chrome.ChromeOptions; import org.openqa.selenium.remote.DesiredCapabilities; public class LoadWebPageExample { public static void main(String[] args) { System.setProperty("webdriver.chrome.driver", "D:\\chromedriver.exe"); ChromeOptions options = new ChromeOptions(); options.addArguments("window-size=800,600"); DesiredCapabilities capabilities = DesiredCapabilities.chrome(); capabilities.setCapability(ChromeOptions.CAPABILITY, options); WebDriver driver = new ChromeDriver(capabilities); driver.get("http://google.com/"); //driver.close(); driver.quit(); } }