diff --git a/Lib/test/test_bsddb.py b/Lib/test/test_bsddb.py
index f6e6ad0..56dade4 100755
--- a/Lib/test/test_bsddb.py
+++ b/Lib/test/test_bsddb.py
@@ -4,11 +4,16 @@
 """
 import os, sys
 import copy
-import bsddb
-import dbhash # Just so we know it's imported
 import unittest
 from test import test_support
 
+# Skip test if _bsddb wasn't built.
+test_support.import_module('_bsddb')
+
+import bsddb
+import dbhash # Just so we know it's imported
+
+
 class TestBSDDB(unittest.TestCase):
     openflag = 'c'
 
diff --git a/Lib/test/test_bsddb3.py b/Lib/test/test_bsddb3.py
index b290a6e..095c632 100644
--- a/Lib/test/test_bsddb3.py
+++ b/Lib/test/test_bsddb3.py
@@ -10,8 +10,8 @@
 from test.test_support import (requires, verbose, run_unittest, unlink, rmtree,
     import_module)
 
-#Skip test if bsddb cannot import _bsddb.
-import_module('bsddb')
+# Skip test if _bsddb module was not built.
+import_module('_bsddb')
 
 # When running as a script instead of within the regrtest framework, skip the
 # requires test, since it's obvious we want to run them.
diff --git a/Lib/test/test_fcntl.py b/Lib/test/test_fcntl.py
index 8d416b6..2c5ac11 100755
--- a/Lib/test/test_fcntl.py
+++ b/Lib/test/test_fcntl.py
@@ -3,12 +3,16 @@
 OS/2+EMX doesn't support the file locking operations.
 
 """
-import fcntl
 import os
 import struct
 import sys
 import unittest
-from test.test_support import verbose, TESTFN, unlink, run_unittest
+from test.test_support import (verbose, TESTFN, unlink, run_unittest,
+    import_module)
+
+# Skip test if no fnctl module.
+fcntl = import_module('fcntl')
+
 
 # TODO - Write tests for flock() and lockf().
 
diff --git a/Lib/test/test_scriptpackages.py b/Lib/test/test_scriptpackages.py
index a3a1857..7e02fa0 100644
--- a/Lib/test/test_scriptpackages.py
+++ b/Lib/test/test_scriptpackages.py
@@ -3,7 +3,8 @@
 import unittest
 from test import test_support
 
-aetools = test_support.import_module('aetools')
+# Skip this test if aetools does not exist.
+test_support.import_module('aetools')
 
 class TestScriptpackages(unittest.TestCase):
 
diff --git a/Lib/test/test_support.py b/Lib/test/test_support.py
index 4353339..3df1b27 100644
--- a/Lib/test/test_support.py
+++ b/Lib/test/test_support.py
@@ -51,8 +51,8 @@
                                     DeprecationWarning)
         try:
             module = importlib.import_module(name)
-        except ImportError:
-            raise unittest.SkipTest("No module named " + name)
+        except ImportError, msg:
+            raise unittest.SkipTest(str(msg))
         else:
             return module
 
diff --git a/Lib/test/test_tcl.py b/Lib/test/test_tcl.py
index 26e294c..0b05c54 100644
--- a/Lib/test/test_tcl.py
+++ b/Lib/test/test_tcl.py
@@ -2,8 +2,11 @@
 
 import unittest
 import os
-import _tkinter
 from test import test_support
+
+# Skip this test if the _tkinter module wasn't built.
+_tkinter = test_support.import_module('_tkinter')
+
 from Tkinter import Tcl
 from _tkinter import TclError
 
diff --git a/Lib/test/test_tk.py b/Lib/test/test_tk.py
index 3ece3d9..df4715b 100644
--- a/Lib/test/test_tk.py
+++ b/Lib/test/test_tk.py
@@ -1,9 +1,13 @@
 import os
 import sys
 import unittest
-import Tkinter
 from test import test_support
 
+# Skip test if _tkinter wasn't built.
+test_support.import_module('_tkinter')
+
+import Tkinter
+
 try:
     Tkinter.Button()
 except Tkinter.TclError, msg:
diff --git a/Lib/test/test_ttk_guionly.py b/Lib/test/test_ttk_guionly.py
index aa17c47..379ebae 100644
--- a/Lib/test/test_ttk_guionly.py
+++ b/Lib/test/test_ttk_guionly.py
@@ -3,8 +3,10 @@
 import unittest
 from test import test_support
 
-ttk = test_support.import_module('ttk')
-#If ttk exists _tkinter must exist.
+# Skip this test if _tkinter wasn't built.
+test_support.import_module('_tkinter')
+
+import ttk
 from _tkinter import TclError
 
 try:
diff --git a/Lib/test/test_ttk_textonly.py b/Lib/test/test_ttk_textonly.py
index e7d9c00..dde1b35 100644
--- a/Lib/test/test_ttk_textonly.py
+++ b/Lib/test/test_ttk_textonly.py
@@ -2,6 +2,9 @@
 import sys
 from test import test_support
 
+# Skip this test if _tkinter does not exist.
+test_support.import_module('_tkinter')
+
 this_dir = os.path.dirname(os.path.abspath(__file__))
 lib_tk_test = os.path.abspath(os.path.join(this_dir, '..', 'lib-tk', 'test'))
 if lib_tk_test not in sys.path:
diff --git a/Lib/test/test_winreg.py b/Lib/test/test_winreg.py
index 1dbccc0..1eaa930 100644
--- a/Lib/test/test_winreg.py
+++ b/Lib/test/test_winreg.py
@@ -5,9 +5,9 @@
 import unittest
 from test import test_support
 
-#Do this first so test will be skipped if module doesn't exist
+# Do this first so test will be skipped if module doesn't exist
 test_support.import_module('_winreg')
-#Now import everything
+# Now import everything
 from _winreg import *
 
 test_key_name = "SOFTWARE\\Python Registry Test Key - Delete Me"
