fix coverage for backend parametrization

Any test that takes a backend is required to provide the
requires_backend_interface decorator.
diff --git a/tests/conftest.py b/tests/conftest.py
index 9dc37d3..27cf13b 100644
--- a/tests/conftest.py
+++ b/tests/conftest.py
@@ -27,17 +27,12 @@
     if "backend" in metafunc.fixturenames:
         filtered_backends = []
         for backend in selected_backends:
-            try:
-                required = metafunc.function.requires_backend_interface
-            except AttributeError:
-                # function does not have requires_backend_interface decorator
+            required = metafunc.function.requires_backend_interface
+            required_interfaces = tuple(
+                mark.kwargs["interface"] for mark in required
+            )
+            if isinstance(backend, required_interfaces):
                 filtered_backends.append(backend)
-            else:
-                required_interfaces = tuple(
-                    mark.kwargs["interface"] for mark in required
-                )
-                if isinstance(backend, required_interfaces):
-                    filtered_backends.append(backend)
 
         # If you pass an empty list to parametrize Bad Things(tm) happen
         # as of pytest 2.6.4 when the test also has a parametrize decorator