A DocTestSuite cannot run multiple times: it clears its globals dictionary after the first run.

Rebuild the DocTestSuite on each iteration.
diff --git a/Lib/test/test_collections.py b/Lib/test/test_collections.py
index 5a6387a..15f0bf7 100644
--- a/Lib/test/test_collections.py
+++ b/Lib/test/test_collections.py
@@ -305,13 +305,12 @@
         self.failIf(issubclass(basestring, MutableSequence))
 
 import doctest, collections
-NamedTupleDocs = doctest.DocTestSuite(module=collections)
 
 def test_main(verbose=None):
-    import collections as CollectionsModule
+    NamedTupleDocs = doctest.DocTestSuite(module=collections)
     test_classes = [TestNamedTuple, NamedTupleDocs, TestOneTrickPonyABCs, TestCollectionABCs]
     test_support.run_unittest(*test_classes)
-    test_support.run_doctest(CollectionsModule, verbose)
+    test_support.run_doctest(collections, verbose)
 
 if __name__ == "__main__":
     test_main(verbose=True)