Differences between driver.close(), driver.quit() and driver.dispose()
Parameters |
driver.close() |
driver.quit() |
driver.dispose() |
---|---|---|---|
Execution Scope |
Window/Tab-specific |
Session-specific |
Instance-specific |
Effect on WebDriver Session |
Doesn’t terminate |
Terminates along with windows |
Doesn’t terminate |
Resource Release |
Closes a specific window/tab in focus |
Terminates WebDriver and associated windows/tabs |
Releases resources for a specific WebDriver instance |
Effect on Active Window/Tab |
Closes the active window/tab |
Closes the active window/tab |
No effect |
Impact on Multiple Windows/Tabs |
Doesn’t affect |
Closes all windows/tabs |
Doesn’t affect |
Handling Single Window/Tab |
Closes the single window/tab |
Closes the single window/tab |
Doesn’t close |
Effect on WebDriver Server |
No impact |
Sends termination signal to WebDriver server |
No impact |
Graceful Termination |
Closes window/tab without ending session |
Ends WebDriver session |
Doesn’t end the session |
Memory Usage |
Resources used by the window/tab |
All WebDriver resources |
Resources used by instance |
Commonly Used in |
Closing a specific window/tab |
Ending a complete test or session |
Resource management scenarios |
Difference between driver.dispose(), driver.close() and driver.quit()
In Selenium driver.close(), driver.quit(), driver.dispose() methods are used to close the browser windows in their own functionality. Each method serves a similar purpose but has different functionality. The driver.close() method is used to close the current browser window. The driver.quit() method is used to close all the browser windows and finally. The driver.dispose() is used for specific WebDriver implementations like .NET.