diff --git a/Lib/test/test_signal.py b/Lib/test/test_signal.py
index 1f15ff7..83ac669 100644
--- a/Lib/test/test_signal.py
+++ b/Lib/test/test_signal.py
@@ -438,8 +438,8 @@
         self.assertEqual(self.hndl_called, True)
 
     # Issue 3864, unknown if this affects earlier versions of freebsd also
-    @unittest.skipIf(sys.platform=='freebsd6',
-        'itimer not reliable (does not mix well with threading) on freebsd6')
+    @unittest.skipIf(sys.platform in ('freebsd6', 'netbsd5'),
+        'itimer not reliable (does not mix well with threading) on some BSDs.')
     def test_itimer_virtual(self):
         self.itimer = signal.ITIMER_VIRTUAL
         signal.signal(signal.SIGVTALRM, self.sig_vtalrm)
diff --git a/Lib/test/test_socket.py b/Lib/test/test_socket.py
index c33c823..a467e0d 100644
--- a/Lib/test/test_socket.py
+++ b/Lib/test/test_socket.py
@@ -351,8 +351,10 @@
         # Find one service that exists, then check all the related interfaces.
         # I've ordered this by protocols that have both a tcp and udp
         # protocol, at least for modern Linuxes.
-        if sys.platform in ('linux2', 'freebsd4', 'freebsd5', 'freebsd6',
-                            'freebsd7', 'freebsd8', 'darwin'):
+        if (sys.platform.startswith('linux') or
+            sys.platform.startswith('freebsd') or
+            sys.platform.startswith('netbsd') or
+            sys.platform == 'darwin'):
             # avoid the 'echo' service on this platform, as there is an
             # assumption breaking non-standard port/protocol entry
             services = ('daytime', 'qotd', 'domain')
diff --git a/Lib/test/test_threading.py b/Lib/test/test_threading.py
index 713ea9c..a4a6ed6 100644
--- a/Lib/test/test_threading.py
+++ b/Lib/test/test_threading.py
@@ -459,7 +459,8 @@
             return
         # Skip platforms with known problems forking from a worker thread.
         # See http://bugs.python.org/issue3863.
-        if sys.platform in ('freebsd4', 'freebsd5', 'freebsd6', 'os2emx'):
+        if sys.platform in ('freebsd4', 'freebsd5', 'freebsd6', 'netbsd5',
+                           'os2emx'):
             print('Skipping test_3_join_in_forked_from_thread'
                   ' due to known OS bugs on', sys.platform, file=sys.stderr)
             return
