Skip to content

Commit aef5904

Browse files
committed
"--crumbs": Delete cookies between tests reusing sessions
1 parent c7af8ac commit aef5904

File tree

3 files changed

+13
-0
lines changed

3 files changed

+13
-0
lines changed

examples/raw_parameter_script.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@
5151
sb.no_sandbox = False
5252
sb.disable_gpu = False
5353
sb._reuse_session = False
54+
sb._crumbs = False
5455
sb.visual_baseline = False
5556
sb.maximize_option = False
5657
sb.save_screenshot_after_test = False

seleniumbase/fixtures/base_case.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4651,6 +4651,7 @@ def setUp(self, masterqa_mode=False):
46514651
self.extension_dir = sb_config.extension_dir
46524652
self.maximize_option = sb_config.maximize_option
46534653
self._reuse_session = sb_config.reuse_session
4654+
self._crumbs = sb_config.crumbs
46544655
self.save_screenshot_after_test = sb_config.save_screenshot
46554656
self.visual_baseline = sb_config.visual_baseline
46564657
self.timeout_multiplier = sb_config.timeout_multiplier
@@ -4773,6 +4774,8 @@ def setUp(self, masterqa_mode=False):
47734774
url = self.get_current_url()
47744775
if len(url) > 3:
47754776
has_url = True
4777+
if self._crumbs:
4778+
self.driver.delete_all_cookies()
47764779
except Exception:
47774780
pass
47784781
if self._reuse_session and sb_config.shared_driver and has_url:

seleniumbase/plugins/pytest_plugin.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@ def pytest_addoption(parser):
5252
--guest (The option to enable Chrome's Guest mode.)
5353
--devtools (The option to open Chrome's DevTools when the browser opens.)
5454
--reuse-session (The option to reuse the browser session between tests.)
55+
--crumbs (Option to delete all cookies between tests reusing a session.)
5556
--maximize (The option to start with the web browser maximized.)
5657
--save-screenshot (The option to save a screenshot after each test.)
5758
--visual-baseline (Set the visual baseline for Visual/Layout tests.)
@@ -390,6 +391,13 @@ def pytest_addoption(parser):
390391
default=False,
391392
help="""The option to reuse the selenium browser window
392393
session between tests.""")
394+
parser.addoption('--crumbs',
395+
action="store_true",
396+
dest='crumbs',
397+
default=False,
398+
help="""The option to delete all cookies between tests
399+
that reuse the same browser session. This option
400+
is only needed when using "--reuse-session".""")
393401
parser.addoption('--maximize_window', '--maximize-window', '--maximize',
394402
'--fullscreen',
395403
action="store_true",
@@ -478,6 +486,7 @@ def pytest_configure(config):
478486
sb_config.guest_mode = config.getoption('guest_mode')
479487
sb_config.devtools = config.getoption('devtools')
480488
sb_config.reuse_session = config.getoption('reuse_session')
489+
sb_config.crumbs = config.getoption('crumbs')
481490
sb_config.shared_driver = None # The default driver for session reuse
482491
sb_config.maximize_option = config.getoption('maximize_option')
483492
sb_config.save_screenshot = config.getoption('save_screenshot')

0 commit comments

Comments
 (0)