diff --git a/Lib/bsddb/test/test_all.py b/Lib/bsddb/test/test_all.py
index 9a4d3ee..559d41b 100644
--- a/Lib/bsddb/test/test_all.py
+++ b/Lib/bsddb/test/test_all.py
@@ -67,6 +67,10 @@
             v = self._dbcursor.next_dup()
             return self._fix(v)
 
+        def next_nodup(self) :
+            v = self._dbcursor.next_nodup()
+            return self._fix(v)
+
         def put(self, key, value, flags=0, dlen=-1, doff=-1) :
             if isinstance(key, str) :
                 key = bytes(key, charset)
diff --git a/Lib/test/test_bsddb3.py b/Lib/test/test_bsddb3.py
index 41d0e21..9079b0e 100644
--- a/Lib/test/test_bsddb3.py
+++ b/Lib/test/test_bsddb3.py
@@ -11,9 +11,6 @@
 
 # When running as a script instead of within the regrtest framework, skip the
 # requires test, since it's obvious we want to run them.
-if __name__ != '__main__':
-    requires('bsddb')
-
 verbose = False
 if 'verbose' in sys.argv:
     verbose = True
@@ -52,6 +49,10 @@
 def test_main():
     from bsddb import db
     from bsddb.test import test_all
+
+    # This must be improved...
+    test_all.do_proxy_db_py3k(True)
+
     test_all.set_test_path_prefix(os.path.join(tempfile.gettempdir(),
                                  'z-test_bsddb3-%s' %
                                  os.getpid()))
@@ -73,6 +74,9 @@
         except:
             pass
 
+        # This must be improved...
+        test_all.do_proxy_db_py3k(False)
+
 
 if __name__ == '__main__':
     test_main()
