Attempt fix of #11557 by changing teardown logic.
diff --git a/Lib/test/test_logging.py b/Lib/test/test_logging.py
index b2e3327..0a7d7d1 100644
--- a/Lib/test/test_logging.py
+++ b/Lib/test/test_logging.py
@@ -2414,15 +2414,20 @@
 
     def setUp(self):
         super(BasicConfigTest, self).setUp()
-        handlers = logging.root.handlers
-        self.addCleanup(lambda: setattr(logging.root, 'handlers', handlers))
+        self.handlers = logging.root.handlers
+        self.addCleanup(self.cleanup)
         logging.root.handlers = []
 
     def tearDown(self):
-        logging.shutdown()
+        for h in logging.root.handlers[:]:
+            logging.root.removeHandler(h)
+            h.close()
         super(BasicConfigTest, self).tearDown()
 
-    @unittest.skipIf(True, "test disabled, issue #11557")
+    def cleanup(self):
+        setattr(logging.root, 'handlers', self.handlers)
+
+    #@unittest.skipIf(True, "test disabled, issue #11557")
     def test_no_kwargs(self):
         logging.basicConfig()