diff --git a/testing/web-platform/tests/webdriver/conftest.py b/testing/web-platform/tests/webdriver/conftest.py
index 6dbcfea203e6..77118f0bbd56 100644
--- a/testing/web-platform/tests/webdriver/conftest.py
+++ b/testing/web-platform/tests/webdriver/conftest.py
@@ -1,12 +1,13 @@
import pytest
from support.fixtures import (
- create_frame, create_session, create_window, http, server_config, session,
+ configuration, create_frame, create_window, http, new_session, server_config, session,
url)
+pytest.fixture(scope="session")(configuration)
pytest.fixture()(create_frame)
-pytest.fixture()(create_session)
pytest.fixture()(create_window)
pytest.fixture()(http)
+pytest.fixture(scope="function")(new_session)
pytest.fixture()(server_config)
pytest.fixture(scope="function")(session)
pytest.fixture()(url)
diff --git a/testing/web-platform/tests/webdriver/support/fixtures.py b/testing/web-platform/tests/webdriver/support/fixtures.py
index 91b93757cbcd..1d64d1a394f6 100644
--- a/testing/web-platform/tests/webdriver/support/fixtures.py
+++ b/testing/web-platform/tests/webdriver/support/fixtures.py
@@ -31,6 +31,7 @@ def _dismiss_user_prompts(session):
session.window_handle = current_window
+
def _restore_windows(session):
"""Closes superfluous windows opened by the test without ending
the session implicitly by closing the last window.
@@ -44,6 +45,7 @@ def _restore_windows(session):
session.window_handle = current_window
+
def _switch_to_top_level_browsing_context(session):
"""If the current browsing context selected by WebDriver is a
`` or an `