Perform Windows and Edge optimizations
- Check for service process before driver.quit() on Windows
-- (This prevents a hanging process during cleanup if a driver was already quit. Sometimes people forget that SeleniumBase already quits drivers automatically at the end of tests, so if they manually try to quit a driver during a test, then during the cleanup phase there would be a hanging process on Windows when SeleniumBase tries to quit the driver again. Now, a check is performed to find out if drivers have already been quit.)
-- (In the case of tests that spin up multiple drivers usingself.get_new_driver()
, in SeleniumBase2.4.22
, a new method was added:self.quit_extra_driver()
, which quits extra drivers safely, and then removes those drivers from the list of drivers to be quit automatically at the end of tests.) - Update default EdgeDriver version if can't detect latest