@@ -1931,6 +1931,19 @@ def _add_pytest_html_extra(self):
1931
1931
except Exception :
1932
1932
pass
1933
1933
1934
+ def _quit_all_drivers (self ):
1935
+ # Close all open browser windows
1936
+ self ._drivers_list .reverse () # Last In, First Out
1937
+ for driver in self ._drivers_list :
1938
+ try :
1939
+ driver .quit ()
1940
+ except AttributeError :
1941
+ pass
1942
+ except Exception :
1943
+ pass
1944
+ self .driver = None
1945
+ self ._drivers_list = []
1946
+
1934
1947
def tearDown (self ):
1935
1948
"""
1936
1949
Be careful if a subclass of BaseCase overrides setUp()
@@ -1990,20 +2003,8 @@ def tearDown(self):
1990
2003
if self .with_page_source :
1991
2004
log_helper .log_page_source (
1992
2005
test_logpath , self .driver )
1993
- try :
1994
- # Finally close the browser
1995
- if self ._extra_drivers :
1996
- for extra_driver in self ._extra_drivers :
1997
- try :
1998
- extra_driver .quit ()
1999
- except Exception :
2000
- pass # Extra driver was already quit
2001
- self .driver .quit ()
2002
- except AttributeError :
2003
- pass
2004
- except Exception :
2005
- pass
2006
- self .driver = None
2006
+ # (Pytest) Finally close all open browser windows
2007
+ self ._quit_all_drivers ()
2007
2008
if self .headless :
2008
2009
if self .headless_active :
2009
2010
self .display .stop ()
@@ -2041,18 +2042,5 @@ def tearDown(self):
2041
2042
data_payload .logURL = index_file
2042
2043
self .testcase_manager .update_testcase_log_url (data_payload )
2043
2044
else :
2044
- # Using Nosetests
2045
- try :
2046
- # Finally close the browser
2047
- if self ._extra_drivers :
2048
- for extra_driver in self ._extra_drivers :
2049
- try :
2050
- extra_driver .quit ()
2051
- except Exception :
2052
- pass # Extra driver was already quit
2053
- self .driver .quit ()
2054
- except AttributeError :
2055
- pass
2056
- except Exception :
2057
- pass
2058
- self .driver = None
2045
+ # (Nosetests) Finally close all open browser windows
2046
+ self ._quit_all_drivers ()
0 commit comments