diff --git a/test/conftest.py b/test/conftest.py
index 6009cc6a90f39ff520818e28846e953ce444dc30..2c9869be1015d6ef6d63b70e2fe09fe69a5a40af 100644
--- a/test/conftest.py
+++ b/test/conftest.py
@@ -98,12 +98,12 @@ class MockedRedis(object):
 
     def scan_iter(self, glob=None):
         if not glob:
-            for k in MockedRedis.db.keys():
+            for k in list(MockedRedis.db.keys()):
                 yield k.encode('utf-8')
 
         m = re.match(r'^([^*]+)\*$', glob)
         assert m  # all expected globs are like this
-        for k in MockedRedis.db.keys():
+        for k in list(MockedRedis.db.keys()):
             if k.startswith(m.group(1)):
                 yield k.encode('utf-8')
 
@@ -114,6 +114,12 @@ class MockedRedis(object):
         # only called from testing routes (hopefully)
         pass
 
+    def execute(self):
+        pass
+
+    def pipeline(self, *args, **kwargs):
+        return self
+
 
 @pytest.fixture
 def cached_test_data():