我使用硒webdriver(用於Internet Explorer)。它的功能基本上是在Internet Explorer中打開一個網頁,並進行提交。如何殺死後臺運行的IEDriver exe進程(Selenium webdriver)?
我該如何殺死在後臺自動運行internetexplorer.exe?
我使用硒webdriver(用於Internet Explorer)。它的功能基本上是在Internet Explorer中打開一個網頁,並進行提交。如何殺死後臺運行的IEDriver exe進程(Selenium webdriver)?
我該如何殺死在後臺自動運行internetexplorer.exe?
關閉瀏覽器:
try{
WebDriver driver = new InternetExplorerDriver();
.. write all the webdriver code here like driver.get, driver.findElement().click() etc. etc.
}
catch(Throwable webDriverException){
if(webDriverException.getMessage().contains("org.openqa.selenium.WebDriverException: Error communicating with the remote browser. It may have died"){
// Kill IEDriverServer.exe process
// Using WebDriver WindowUtils utility
WindowsUtils.killByName("IEDriverServer.exe");
// Or using JavaRunTime
Runtime.getRuntime().exec("taskkill /F /IM IEDriverServer.exe")
}
}
看看這有助於!
您可以在測試腳本的最後添加以下代碼以關閉IE驅動程序。所以不需要手動關閉它。
try {
Runtime.getRuntime().exec("taskkill /F /IM IEDriverServer.exe");
} catch (IOException e) {
e.printStackTrace();
}
否則打開記事本並粘貼下面的代碼。
taskkill /F /IM IEDriverServer.exe
將文件保存爲closedriver.bat
點擊當u要關閉IE驅動此批處理文件。
我想,只要瀏覽器是由用戶關閉你的代碼來執行。在webdriver中是否有任何瀏覽器關閉(X)事件? – user1254261
在webdriver中可以使用關閉當前瀏覽器窗口的close()方法。爲了關閉所有由webdriver打開的瀏覽器窗口,使用quit()方法。在編寫close()/ quit()方法後使用上面的代碼。稍微編輯了一下我的回覆。 –
如果我使用close()或quit()方法,那麼它會自動關閉窗口。但我希望用戶通過按瀏覽器關閉(X)按鈕來關閉瀏覽器。 – user1254261