diff --git a/tests/conftest.py b/tests/conftest.py
index 00c44ca..ecad1b2 100644
--- a/tests/conftest.py
+++ b/tests/conftest.py
@@ -4,16 +4,13 @@
 from cryptography.hazmat.backends.interfaces import (
     HMACBackend, CipherBackend, HashBackend, PBKDF2HMACBackend
 )
-from cryptography.hazmat.backends.multibackend import PrioritizedMultiBackend
 
 from .utils import check_for_iface, check_backend_support, select_backends
 
 
 def pytest_generate_tests(metafunc):
     names = metafunc.config.getoption("--backend")
-    selected_backends = select_backends(
-        names, _ALL_BACKENDS + [PrioritizedMultiBackend(_ALL_BACKENDS)]
-    )
+    selected_backends = select_backends(names, _ALL_BACKENDS)
 
     if "backend" in metafunc.fixturenames:
         metafunc.parametrize("backend", selected_backends)
diff --git a/tests/hazmat/backends/test_multibackend.py b/tests/hazmat/backends/test_multibackend.py
new file mode 100644
index 0000000..aaf6d7c
--- /dev/null
+++ b/tests/hazmat/backends/test_multibackend.py
@@ -0,0 +1,16 @@
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#    http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+# implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+
+class TestPrioritizedMultiBackend(object):
+    pass
