Let's try using Twisted's TestCase and see how that goes.
diff --git a/test/test_ssl.py b/test/test_ssl.py
index dc0997d..7444af3 100644
--- a/test/test_ssl.py
+++ b/test/test_ssl.py
@@ -5,12 +5,18 @@
 """
 
 from sys import platform
-from unittest import TestCase
 from tempfile import mktemp
 from socket import socket
 from os import makedirs, symlink
 from os.path import join
 
+try:
+    # Prefer Twisted's TestCase, since it supports things like skips.
+    from twisted.trial.unittest import TestCase
+except ImportError:
+    # Fall back to the stdlib TestCase though, since it kind of works.
+    from unittest import TestCase
+
 from OpenSSL.crypto import TYPE_RSA, FILETYPE_PEM, PKey, dump_privatekey, load_certificate, load_privatekey
 from OpenSSL.SSL import WantReadError, Context, Connection, Error
 from OpenSSL.SSL import SSLv2_METHOD, SSLv3_METHOD, SSLv23_METHOD, TLSv1_METHOD