diff --git a/src/_zkapauthorizer/tests/test_plugin.py b/src/_zkapauthorizer/tests/test_plugin.py
index 403acd35779e4a2b6ce571ffd592e14aab191144..44c79af85c0a783ec4af01ae06cc44309686a000 100644
--- a/src/_zkapauthorizer/tests/test_plugin.py
+++ b/src/_zkapauthorizer/tests/test_plugin.py
@@ -47,6 +47,8 @@ from testtools.matchers import (
     HasLength,
     AllMatch,
     ContainsDict,
+    MatchesStructure,
+    IsInstance,
 )
 from testtools.twistedsupport import (
     succeeded,
@@ -169,6 +171,53 @@ def get_rref(interface=None):
 
 
 
+class GetRRefTests(TestCase):
+    """
+    Tests for ``get_rref``.
+    """
+    def test_localremote(self):
+        """
+        ``get_rref`` returns an instance of ``LocalRemote``.
+        """
+        rref = get_rref()
+        self.assertThat(
+            rref,
+            IsInstance(LocalRemote),
+        )
+
+    def test_remote_interface(self):
+        """
+        ``get_rref`` returns an object which declares a remote interface matching
+        the one given.
+        """
+        rref = get_rref()
+        self.assertThat(
+            rref,
+            AfterPreprocessing(
+                lambda ref: ref.tracker,
+                MatchesStructure(
+                    interfaceName=Equals(RIPrivacyPassAuthorizedStorageServer.__remote_name__),
+                ),
+            ),
+        )
+
+    def test_default_remote_interface(self):
+        """
+        ``get_rref`` returns an object which declares a
+        ``RIPrivacyPassAuthorizedStorageServer`` as the remote interface if no
+        other interface is given.
+        """
+        rref = get_rref(RIStorageServer)
+        self.assertThat(
+            rref,
+            AfterPreprocessing(
+                lambda ref: ref.tracker,
+                MatchesStructure(
+                    interfaceName=Equals(RIStorageServer.__remote_name__),
+                ),
+            ),
+        )
+
 
 class PluginTests(TestCase):
     """