diff --git a/src/test/utils/SSHTestAgent.py b/src/test/utils/SSHTestAgent.py
index 82f20ad..1f6a6d0 100644
--- a/src/test/utils/SSHTestAgent.py
+++ b/src/test/utils/SSHTestAgent.py
@@ -19,7 +19,7 @@
 
     def run_cmd(self, cmd, timeout = 5):
         """Run the command on the test host"""
-        host_remove = 'ssh-keygen -f "%s" -R [%s]:8101' %(self.hosts_file, self.host)
+        host_remove = 'ssh-keygen -f "%s" -R [%s]:8101 2>/dev/null' %(self.hosts_file, self.host)
         try:
             os.system(host_remove)
         except: pass
@@ -30,7 +30,7 @@
         except:
             log.error('Unable to connect to test host %s' %self.host)
             return False, None
-        
+
         channel = self.client.get_transport().open_session()
         channel.exec_command(cmd)
         if channel.exit_status_ready():
diff --git a/src/test/vsg/vsgTest.py b/src/test/vsg/vsgTest.py
index 5ad8d3e..de59966 100644
--- a/src/test/vsg/vsgTest.py
+++ b/src/test/vsg/vsgTest.py
@@ -14,6 +14,7 @@
 #
 import time
 import os
+import warnings
 from nose.tools import *
 from scapy.all import *
 from CordTestUtils import *
@@ -40,6 +41,7 @@
 
     @classmethod
     def setUpClass(cls):
+        warnings.simplefilter('ignore')
         cls.controllers = get_controllers()
         cls.controller = cls.controllers[0]
         cls.cli = None
