You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by cl...@apache.org on 2015/05/28 17:19:01 UTC

[10/21] activemq-artemis git commit: More test-suite refactoring

http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/328611fd/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/FailoverTestBase.java
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/FailoverTestBase.java b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/FailoverTestBase.java
index fbc6cd0..49d4f8d 100644
--- a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/FailoverTestBase.java
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/FailoverTestBase.java
@@ -41,7 +41,7 @@ import org.apache.activemq.artemis.core.server.impl.InVMNodeManager;
 import org.apache.activemq.artemis.tests.integration.cluster.util.SameProcessActiveMQServer;
 import org.apache.activemq.artemis.tests.integration.cluster.util.TestableServer;
 import org.apache.activemq.artemis.tests.util.ReplicatedBackupUtils;
-import org.apache.activemq.artemis.tests.util.ServiceTestBase;
+import org.apache.activemq.artemis.tests.util.ActiveMQTestBase;
 import org.junit.After;
 import org.junit.Assert;
 import org.junit.Before;
@@ -53,7 +53,7 @@ import java.util.List;
 import java.util.concurrent.CountDownLatch;
 import java.util.concurrent.TimeUnit;
 
-public abstract class FailoverTestBase extends ServiceTestBase
+public abstract class FailoverTestBase extends ActiveMQTestBase
 {
    // Constants -----------------------------------------------------
 
@@ -91,7 +91,7 @@ public abstract class FailoverTestBase extends ServiceTestBase
 
       setLiveIdentity();
       liveServer.start();
-      waitForServer(liveServer.getServer());
+      waitForServerToStart(liveServer.getServer());
 
       if (backupServer != null)
       {
@@ -142,7 +142,7 @@ public abstract class FailoverTestBase extends ServiceTestBase
    {
       try
       {
-         message.setBodyInputStream(ServiceTestBase.createFakeLargeStream(LARGE_MESSAGE_SIZE));
+         message.setBodyInputStream(ActiveMQTestBase.createFakeLargeStream(LARGE_MESSAGE_SIZE));
       }
       catch (Exception e)
       {
@@ -163,7 +163,7 @@ public abstract class FailoverTestBase extends ServiceTestBase
       for (int j = 0; j < LARGE_MESSAGE_SIZE; j++)
       {
          Assert.assertTrue("msg " + i + ", expecting " + LARGE_MESSAGE_SIZE + " bytes, got " + j, buffer.readable());
-         Assert.assertEquals("equal at " + j, ServiceTestBase.getSamplebyte(j), buffer.readByte());
+         Assert.assertEquals("equal at " + j, ActiveMQTestBase.getSamplebyte(j), buffer.readByte());
       }
    }
 
@@ -173,7 +173,7 @@ public abstract class FailoverTestBase extends ServiceTestBase
       TransportConfiguration liveConnector = getConnectorTransportConfiguration(true);
       TransportConfiguration backupConnector = getConnectorTransportConfiguration(false);
 
-      backupConfig = super.createDefaultConfig()
+      backupConfig = super.createDefaultInVMConfig()
          .clearAcceptorConfigurations()
          .addAcceptorConfiguration(getAcceptorTransportConfiguration(false))
          .setHAPolicyConfiguration(new SharedStoreSlavePolicyConfiguration()
@@ -184,7 +184,7 @@ public abstract class FailoverTestBase extends ServiceTestBase
 
       backupServer = createTestableServer(backupConfig);
 
-      liveConfig = super.createDefaultConfig()
+      liveConfig = super.createDefaultInVMConfig()
          .clearAcceptorConfigurations()
          .addAcceptorConfiguration(getAcceptorTransportConfiguration(true))
          .setHAPolicyConfiguration(new SharedStoreMasterPolicyConfiguration()
@@ -201,8 +201,8 @@ public abstract class FailoverTestBase extends ServiceTestBase
       final TransportConfiguration backupConnector = getConnectorTransportConfiguration(false);
       final TransportConfiguration backupAcceptor = getAcceptorTransportConfiguration(false);
 
-      backupConfig = createDefaultConfig();
-      liveConfig = createDefaultConfig();
+      backupConfig = createDefaultInVMConfig();
+      liveConfig = createDefaultInVMConfig();
 
       ReplicatedBackupUtils.configureReplicationPair(backupConfig, backupConnector, backupAcceptor, liveConfig, liveConnector, null);
 
@@ -312,7 +312,7 @@ public abstract class FailoverTestBase extends ServiceTestBase
       final ActiveMQServerImpl actualServer = (ActiveMQServerImpl) backupServer.getServer();
       if (actualServer.getHAPolicy().isSharedStore())
       {
-         waitForServer(actualServer);
+         waitForServerToStart(actualServer);
       }
       else
       {
@@ -326,10 +326,8 @@ public abstract class FailoverTestBase extends ServiceTestBase
 
    protected ServerLocatorInternal getServerLocator() throws Exception
    {
-      ServerLocator locator = ActiveMQClient.createServerLocatorWithHA(getConnectorTransportConfiguration(true), getConnectorTransportConfiguration(false));
-      locator.setRetryInterval(50);
-      addServerLocator(locator);
-      return (ServerLocatorInternal) locator;
+      return (ServerLocatorInternal) addServerLocator(ActiveMQClient.createServerLocatorWithHA(getConnectorTransportConfiguration(true), getConnectorTransportConfiguration(false)))
+              .setRetryInterval(50);
    }
 
 

http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/328611fd/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/GroupingFailoverTestBase.java
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/GroupingFailoverTestBase.java b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/GroupingFailoverTestBase.java
index 5c2b660..4def201 100644
--- a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/GroupingFailoverTestBase.java
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/GroupingFailoverTestBase.java
@@ -29,7 +29,7 @@ import org.apache.activemq.artemis.core.config.ha.ReplicatedPolicyConfiguration;
 import org.apache.activemq.artemis.core.server.group.impl.GroupingHandlerConfiguration;
 import org.apache.activemq.artemis.core.server.impl.SharedNothingBackupActivation;
 import org.apache.activemq.artemis.tests.integration.cluster.distribution.ClusterTestBase;
-import org.apache.activemq.artemis.tests.util.ServiceTestBase;
+import org.apache.activemq.artemis.tests.util.ActiveMQTestBase;
 import org.junit.Test;
 
 public abstract class GroupingFailoverTestBase extends ClusterTestBase
@@ -129,7 +129,7 @@ public abstract class GroupingFailoverTestBase extends ClusterTestBase
 
          Thread.sleep(10);
       }
-      while (System.currentTimeMillis() - start < ServiceTestBase.WAIT_TIMEOUT);
+      while (System.currentTimeMillis() - start < ActiveMQTestBase.WAIT_TIMEOUT);
 
       throw new IllegalStateException("Timed out waiting for backup announce");
    }

http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/328611fd/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/LargeMessageFailoverTest.java
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/LargeMessageFailoverTest.java b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/LargeMessageFailoverTest.java
index ff757f5..1ade1bd 100644
--- a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/LargeMessageFailoverTest.java
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/LargeMessageFailoverTest.java
@@ -17,7 +17,6 @@
 package org.apache.activemq.artemis.tests.integration.cluster.failover;
 
 import org.apache.activemq.artemis.api.core.client.ClientMessage;
-import org.apache.activemq.artemis.api.core.client.ServerLocator;
 import org.apache.activemq.artemis.core.client.impl.ServerLocatorInternal;
 import org.junit.Test;
 
@@ -54,9 +53,8 @@ public class LargeMessageFailoverTest extends FailoverTest
    @Override
    protected ServerLocatorInternal getServerLocator() throws Exception
    {
-      ServerLocator locator = super.getServerLocator();
-      locator.setMinLargeMessageSize(MIN_LARGE_MESSAGE);
-      return (ServerLocatorInternal)locator;
+      return (ServerLocatorInternal) super.getServerLocator()
+              .setMinLargeMessageSize(MIN_LARGE_MESSAGE);
    }
 
    /**

http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/328611fd/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/LiveToLiveFailoverTest.java
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/LiveToLiveFailoverTest.java b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/LiveToLiveFailoverTest.java
index ed99b57..0d02a33 100644
--- a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/LiveToLiveFailoverTest.java
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/LiveToLiveFailoverTest.java
@@ -32,7 +32,6 @@ import org.apache.activemq.artemis.tests.util.TransportConfigurationUtils;
 import org.junit.Assert;
 import org.junit.Test;
 
-import java.util.HashMap;
 import java.util.Map;
 import java.util.concurrent.CountDownLatch;
 import java.util.concurrent.TimeUnit;
@@ -57,7 +56,7 @@ public class LiveToLiveFailoverTest extends FailoverTest
       TransportConfiguration liveConnector0 = getConnectorTransportConfiguration(true, 0);
       TransportConfiguration liveConnector1 = getConnectorTransportConfiguration(true, 1);
 
-      backupConfig = super.createDefaultConfig(1, new HashMap<String, Object>(), INVM_ACCEPTOR_FACTORY)
+      backupConfig = super.createDefaultInVMConfig(1)
          .clearAcceptorConfigurations()
          .addAcceptorConfiguration(getAcceptorTransportConfiguration(true, 1))
          .setHAPolicyConfiguration(new ColocatedPolicyConfiguration()
@@ -73,7 +72,7 @@ public class LiveToLiveFailoverTest extends FailoverTest
 
       backupServer = createColocatedTestableServer(backupConfig, nodeManager1, nodeManager0, 1);
 
-      liveConfig = super.createDefaultConfig(0, new HashMap<String, Object>(), INVM_ACCEPTOR_FACTORY)
+      liveConfig = super.createDefaultInVMConfig(0)
          .clearAcceptorConfigurations()
          .addAcceptorConfiguration(getAcceptorTransportConfiguration(true, 0))
          .setHAPolicyConfiguration(new ColocatedPolicyConfiguration()
@@ -204,9 +203,9 @@ public class LiveToLiveFailoverTest extends FailoverTest
 
    protected void createSessionFactory() throws Exception
    {
-      locator.setBlockOnNonDurableSend(true);
-      locator.setBlockOnDurableSend(true);
-      locator.setReconnectAttempts(-1);
+      locator.setBlockOnNonDurableSend(true)
+              .setBlockOnDurableSend(true)
+              .setReconnectAttempts(-1);
 
       sf = createSessionFactoryAndWaitForTopology(locator, getConnectorTransportConfiguration(true, 0),  2);
 
@@ -264,10 +263,10 @@ public class LiveToLiveFailoverTest extends FailoverTest
    @Test
    public void testFailoverOnInitialConnection() throws Exception
    {
-      locator.setBlockOnNonDurableSend(true);
-      locator.setBlockOnDurableSend(true);
-      locator.setFailoverOnInitialConnection(true);
-      locator.setReconnectAttempts(-1);
+      locator.setBlockOnNonDurableSend(true)
+              .setBlockOnDurableSend(true)
+              .setFailoverOnInitialConnection(true)
+              .setReconnectAttempts(-1);
 
       sf = createSessionFactoryAndWaitForTopology(locator, 2);
 
@@ -296,9 +295,9 @@ public class LiveToLiveFailoverTest extends FailoverTest
    public void testCreateNewFactoryAfterFailover() throws Exception
    {
       this.disableCheckThread();
-      locator.setBlockOnNonDurableSend(true);
-      locator.setBlockOnDurableSend(true);
-      locator.setFailoverOnInitialConnection(true);
+      locator.setBlockOnNonDurableSend(true)
+              .setBlockOnDurableSend(true)
+              .setFailoverOnInitialConnection(true);
       sf = createSessionFactoryAndWaitForTopology(locator, 2);
 
       ClientSession session = sendAndConsume(sf, true);

http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/328611fd/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/MultipleBackupsFailoverTestBase.java
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/MultipleBackupsFailoverTestBase.java b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/MultipleBackupsFailoverTestBase.java
index a9449dc..c0798ce 100644
--- a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/MultipleBackupsFailoverTestBase.java
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/MultipleBackupsFailoverTestBase.java
@@ -29,14 +29,14 @@ import org.apache.activemq.artemis.api.core.client.ClientSessionFactory;
 import org.apache.activemq.artemis.api.core.client.ServerLocator;
 import org.apache.activemq.artemis.tests.integration.IntegrationTestLogger;
 import org.apache.activemq.artemis.tests.integration.cluster.util.TestableServer;
-import org.apache.activemq.artemis.tests.util.ServiceTestBase;
+import org.apache.activemq.artemis.tests.util.ActiveMQTestBase;
 import org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryInternal;
 import org.apache.activemq.artemis.core.client.impl.ServerLocatorImpl;
 import org.apache.activemq.artemis.core.server.ActiveMQServer;
 import org.apache.activemq.artemis.jms.client.ActiveMQTextMessage;
 import org.junit.Assert;
 
-public abstract class MultipleBackupsFailoverTestBase extends ServiceTestBase
+public abstract class MultipleBackupsFailoverTestBase extends ActiveMQTestBase
 {
    IntegrationTestLogger log = IntegrationTestLogger.LOGGER;
 

http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/328611fd/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/MultipleLivesMultipleBackupsFailoverTest.java
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/MultipleLivesMultipleBackupsFailoverTest.java b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/MultipleLivesMultipleBackupsFailoverTest.java
index 3c6c2d7..ff8d7aa 100644
--- a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/MultipleLivesMultipleBackupsFailoverTest.java
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/MultipleLivesMultipleBackupsFailoverTest.java
@@ -30,7 +30,6 @@ import org.apache.activemq.artemis.core.server.NodeManager;
 import org.apache.activemq.artemis.core.server.impl.InVMNodeManager;
 import org.apache.activemq.artemis.tests.integration.cluster.util.SameProcessActiveMQServer;
 import org.apache.activemq.artemis.tests.integration.cluster.util.TestableServer;
-import org.junit.After;
 import org.junit.Test;
 
 import java.util.HashMap;
@@ -45,21 +44,6 @@ public class MultipleLivesMultipleBackupsFailoverTest extends MultipleBackupsFai
    private ServerLocator locator;
    private final boolean sharedStore = true;
 
-   @Override
-   @After
-   public void tearDown() throws Exception
-   {
-      try
-      {
-         closeServerLocator(locator);
-         closeServerLocator(locator2);
-      }
-      finally
-      {
-         super.tearDown();
-      }
-   }
-
    @Test
    public void testMultipleFailovers2LiveServers() throws Exception
    {
@@ -73,29 +57,29 @@ public class MultipleLivesMultipleBackupsFailoverTest extends MultipleBackupsFai
       createBackupConfig(nodeManager2, 3, 5, true, new int[]{3, 4}, 0, 1, 2);
 
       servers.get(0).start();
-      waitForServer(servers.get(0).getServer());
+      waitForServerToStart(servers.get(0).getServer());
 
       servers.get(3).start();
-      waitForServer(servers.get(3).getServer());
+      waitForServerToStart(servers.get(3).getServer());
 
       servers.get(1).start();
-      waitForServer(servers.get(1).getServer());
+      waitForServerToStart(servers.get(1).getServer());
 
       servers.get(2).start();
 
       servers.get(4).start();
-      waitForServer(servers.get(4).getServer());
+      waitForServerToStart(servers.get(4).getServer());
 
       servers.get(5).start();
 
-      waitForServer(servers.get(4).getServer());
+      waitForServerToStart(servers.get(4).getServer());
 
-      locator = getServerLocator(0);
+      locator = getServerLocator(0)
+              .setBlockOnNonDurableSend(true)
+              .setBlockOnDurableSend(true)
+              .setBlockOnAcknowledge(true)
+              .setReconnectAttempts(-1);
 
-      locator.setBlockOnNonDurableSend(true);
-      locator.setBlockOnDurableSend(true);
-      locator.setBlockOnAcknowledge(true);
-      locator.setReconnectAttempts(-1);
       ClientSessionFactoryInternal sf = createSessionFactoryAndWaitForTopology(locator, 4, servers.get(0).getServer());
       ClientSession session = sendAndConsume(sf, true);
 
@@ -105,11 +89,12 @@ public class MultipleLivesMultipleBackupsFailoverTest extends MultipleBackupsFai
 
       int liveAfter0 = waitForNewLive(10000, true, servers, 1, 2);
 
-      locator2 = getServerLocator(3);
-      locator2.setBlockOnNonDurableSend(true);
-      locator2.setBlockOnDurableSend(true);
-      locator2.setBlockOnAcknowledge(true);
-      locator2.setReconnectAttempts(-1);
+      locator2 = getServerLocator(3)
+              .setBlockOnNonDurableSend(true)
+              .setBlockOnDurableSend(true)
+              .setBlockOnAcknowledge(true)
+              .setReconnectAttempts(-1);
+
       ClientSessionFactoryInternal sf2 = createSessionFactoryAndWaitForTopology(locator2, 4);
       ClientSession session2 = sendAndConsume(sf2, true);
 
@@ -156,10 +141,9 @@ public class MultipleLivesMultipleBackupsFailoverTest extends MultipleBackupsFai
                                      int[] otherBackupNodes,
                                      int... otherClusterNodes) throws Exception
    {
-      Configuration config1 = super.createDefaultConfig()
+      Configuration config1 = super.createDefaultInVMConfig()
          .clearAcceptorConfigurations()
          .addAcceptorConfiguration(createTransportConfiguration(isNetty(), true, generateParams(nodeid, isNetty())))
-         .setSecurityEnabled(false)
          .setHAPolicyConfiguration(sharedStore ? new SharedStoreSlavePolicyConfiguration() : new ReplicaPolicyConfiguration())
          .setBindingsDirectory(getBindingsDir() + "_" + liveNode)
          .setJournalDirectory(getJournalDir() + "_" + liveNode)
@@ -191,10 +175,9 @@ public class MultipleLivesMultipleBackupsFailoverTest extends MultipleBackupsFai
    {
       TransportConfiguration liveConnector = createTransportConfiguration(isNetty(), false,generateParams(liveNode, isNetty()));
 
-      Configuration config0 = super.createDefaultConfig()
+      Configuration config0 = super.createDefaultInVMConfig()
          .clearAcceptorConfigurations()
          .addAcceptorConfiguration(createTransportConfiguration(isNetty(), true, generateParams(liveNode, isNetty())))
-         .setSecurityEnabled(false)
          .setHAPolicyConfiguration(sharedStore ? new SharedStoreMasterPolicyConfiguration() : new ReplicatedPolicyConfiguration())
          .setBindingsDirectory(getBindingsDir() + "_" + liveNode)
          .setJournalDirectory(getJournalDir() + "_" + liveNode)

http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/328611fd/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/MultipleServerFailoverTestBase.java
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/MultipleServerFailoverTestBase.java b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/MultipleServerFailoverTestBase.java
index f4ca1c6..08be3f0 100644
--- a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/MultipleServerFailoverTestBase.java
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/MultipleServerFailoverTestBase.java
@@ -16,17 +16,11 @@
  */
 package org.apache.activemq.artemis.tests.integration.cluster.failover;
 
-import java.util.ArrayList;
-import java.util.List;
-
 import org.apache.activemq.artemis.api.core.SimpleString;
 import org.apache.activemq.artemis.api.core.TransportConfiguration;
+import org.apache.activemq.artemis.api.core.client.ActiveMQClient;
 import org.apache.activemq.artemis.api.core.client.ClientSession;
 import org.apache.activemq.artemis.api.core.client.ClientSessionFactory;
-import org.apache.activemq.artemis.api.core.client.ActiveMQClient;
-import org.apache.activemq.artemis.api.core.client.ServerLocator;
-import org.apache.activemq.artemis.tests.integration.cluster.util.TestableServer;
-import org.apache.activemq.artemis.tests.util.ServiceTestBase;
 import org.apache.activemq.artemis.core.client.impl.ServerLocatorInternal;
 import org.apache.activemq.artemis.core.config.Configuration;
 import org.apache.activemq.artemis.core.config.HAPolicyConfiguration;
@@ -39,11 +33,15 @@ import org.apache.activemq.artemis.core.server.ActiveMQServerLogger;
 import org.apache.activemq.artemis.core.server.NodeManager;
 import org.apache.activemq.artemis.core.server.Queue;
 import org.apache.activemq.artemis.tests.integration.cluster.util.SameProcessActiveMQServer;
+import org.apache.activemq.artemis.tests.integration.cluster.util.TestableServer;
+import org.apache.activemq.artemis.tests.util.ActiveMQTestBase;
 import org.apache.activemq.artemis.tests.util.TransportConfigurationUtils;
-import org.junit.After;
 import org.junit.Before;
 
-public abstract class MultipleServerFailoverTestBase extends ServiceTestBase
+import java.util.ArrayList;
+import java.util.List;
+
+public abstract class MultipleServerFailoverTestBase extends ActiveMQTestBase
 {
    // Constants -----------------------------------------------------
 
@@ -65,7 +63,7 @@ public abstract class MultipleServerFailoverTestBase extends ServiceTestBase
 
    public abstract int getBackupServerCount();
 
-   public abstract boolean useNetty();
+   public abstract boolean isNetty();
 
    public abstract boolean isSharedStore();
 
@@ -99,7 +97,7 @@ public abstract class MultipleServerFailoverTestBase extends ServiceTestBase
             }
          }
 
-         Configuration configuration = createDefaultConfig(useNetty())
+         Configuration configuration = createDefaultConfig(isNetty())
             .clearAcceptorConfigurations()
             .addAcceptorConfiguration(getAcceptorTransportConfiguration(true, i))
             .setHAPolicyConfiguration(haPolicyConfiguration);
@@ -157,7 +155,7 @@ public abstract class MultipleServerFailoverTestBase extends ServiceTestBase
             }
          }
 
-         Configuration configuration = createDefaultConfig(useNetty())
+         Configuration configuration = createDefaultConfig(isNetty())
             .clearAcceptorConfigurations()
             .addAcceptorConfiguration(getAcceptorTransportConfiguration(false, i))
             .setHAPolicyConfiguration(haPolicyConfiguration);
@@ -203,47 +201,10 @@ public abstract class MultipleServerFailoverTestBase extends ServiceTestBase
       }
    }
 
-   @Override
-   @After
-   public void tearDown() throws Exception
-   {
-      for (TestableServer backupServer : backupServers)
-      {
-         try
-         {
-            backupServer.stop();
-         }
-         catch (Exception e)
-         {
-            logAndSystemOut("unable to stop server", e);
-         }
-      }
-      backupServers.clear();
-      backupServers = null;
-      backupConfigs.clear();
-      backupConfigs = null;
-      for (TestableServer liveServer : liveServers)
-      {
-         try
-         {
-            liveServer.stop();
-         }
-         catch (Exception e)
-         {
-            logAndSystemOut("unable to stop server", e);
-         }
-      }
-      liveServers.clear();
-      liveServers = null;
-      liveConfigs.clear();
-      liveConfigs = null;
-      super.tearDown();
-   }
-
    protected TransportConfiguration getAcceptorTransportConfiguration(final boolean live, int node)
    {
       TransportConfiguration transportConfiguration;
-      if (useNetty())
+      if (isNetty())
       {
          transportConfiguration = TransportConfigurationUtils.getNettyAcceptor(live, node, (live ? "live-" : "backup-") + node);
       }
@@ -257,7 +218,7 @@ public abstract class MultipleServerFailoverTestBase extends ServiceTestBase
    protected TransportConfiguration getConnectorTransportConfiguration(final boolean live, int node)
    {
       TransportConfiguration transportConfiguration;
-      if (useNetty())
+      if (isNetty())
       {
          transportConfiguration = TransportConfigurationUtils.getNettyConnector(live, node, (live ? "live-" : "backup-") + node);
       }
@@ -270,22 +231,18 @@ public abstract class MultipleServerFailoverTestBase extends ServiceTestBase
 
    protected ServerLocatorInternal getServerLocator(int node) throws Exception
    {
-      ServerLocator locator = ActiveMQClient.createServerLocatorWithHA(getConnectorTransportConfiguration(true, node));
-      locator.setRetryInterval(50);
-      locator.setReconnectAttempts(-1);
-      locator.setInitialConnectAttempts(-1);
-      addServerLocator(locator);
-      return (ServerLocatorInternal) locator;
+      return (ServerLocatorInternal) addServerLocator(ActiveMQClient.createServerLocatorWithHA(getConnectorTransportConfiguration(true, node)))
+              .setRetryInterval(50)
+              .setReconnectAttempts(-1)
+              .setInitialConnectAttempts(-1);
    }
 
    protected ServerLocatorInternal getBackupServerLocator(int node) throws Exception
    {
-      ServerLocator locator = ActiveMQClient.createServerLocatorWithHA(getConnectorTransportConfiguration(false, node));
-      locator.setRetryInterval(50);
-      locator.setReconnectAttempts(-1);
-      locator.setInitialConnectAttempts(-1);
-      addServerLocator(locator);
-      return (ServerLocatorInternal) locator;
+      return (ServerLocatorInternal) addServerLocator(ActiveMQClient.createServerLocatorWithHA(getConnectorTransportConfiguration(false, node)))
+              .setRetryInterval(50)
+              .setReconnectAttempts(-1)
+              .setInitialConnectAttempts(-1);
    }
 
    protected ClientSession createSession(ClientSessionFactory sf,

http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/328611fd/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/NettyFailoverTest.java
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/NettyFailoverTest.java b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/NettyFailoverTest.java
index 462df67..54b50af 100644
--- a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/NettyFailoverTest.java
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/NettyFailoverTest.java
@@ -53,12 +53,12 @@ public class NettyFailoverTest extends FailoverTest
       params.put(TransportConstants.HOST_PROP_NAME, "127.0.0.1");
       TransportConfiguration tc = createTransportConfiguration(true, false, params);
 
-      ServerLocator locator = addServerLocator(ActiveMQClient.createServerLocatorWithHA(tc));
+      ServerLocator locator = addServerLocator(ActiveMQClient.createServerLocatorWithHA(tc))
+              .setBlockOnNonDurableSend(true)
+              .setBlockOnDurableSend(true)
+              .setBlockOnAcknowledge(true)
+              .setReconnectAttempts(-1);
 
-      locator.setBlockOnNonDurableSend(true);
-      locator.setBlockOnDurableSend(true);
-      locator.setBlockOnAcknowledge(true);
-      locator.setReconnectAttempts(-1);
       ClientSessionFactoryInternal sf = createSessionFactoryAndWaitForTopology(locator, 2);
 
       ClientSession session = createSession(sf, true, true, 0);

http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/328611fd/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/PagingFailoverTest.java
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/PagingFailoverTest.java b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/PagingFailoverTest.java
index 9d9c52e..f3ca4c9 100644
--- a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/PagingFailoverTest.java
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/PagingFailoverTest.java
@@ -16,8 +16,6 @@
  */
 package org.apache.activemq.artemis.tests.integration.cluster.failover;
 
-import java.util.HashMap;
-
 import org.apache.activemq.artemis.api.core.SimpleString;
 import org.apache.activemq.artemis.api.core.TransportConfiguration;
 import org.apache.activemq.artemis.api.core.client.ClientConsumer;
@@ -25,19 +23,20 @@ import org.apache.activemq.artemis.api.core.client.ClientMessage;
 import org.apache.activemq.artemis.api.core.client.ClientProducer;
 import org.apache.activemq.artemis.api.core.client.ClientSession;
 import org.apache.activemq.artemis.api.core.client.ServerLocator;
-import org.apache.activemq.artemis.tests.integration.cluster.util.SameProcessActiveMQServer;
-import org.apache.activemq.artemis.tests.integration.cluster.util.TestableServer;
-import org.apache.activemq.artemis.tests.util.TransportConfigurationUtils;
 import org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryInternal;
 import org.apache.activemq.artemis.core.config.Configuration;
 import org.apache.activemq.artemis.core.server.ActiveMQServer;
 import org.apache.activemq.artemis.core.server.Queue;
 import org.apache.activemq.artemis.core.settings.impl.AddressSettings;
-import org.junit.After;
+import org.apache.activemq.artemis.tests.integration.cluster.util.SameProcessActiveMQServer;
+import org.apache.activemq.artemis.tests.integration.cluster.util.TestableServer;
+import org.apache.activemq.artemis.tests.util.TransportConfigurationUtils;
 import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Test;
 
+import java.util.HashMap;
+
 /**
  * A PagingFailoverTest
  * <p/>
@@ -69,21 +68,12 @@ public class PagingFailoverTest extends FailoverTestBase
       locator = getServerLocator();
    }
 
-   @Override
-   @After
-   public void tearDown() throws Exception
-   {
-      addClientSession(session);
-      super.tearDown();
-   }
-
    @Test
    public void testPageFailBeforeConsume() throws Exception
    {
       internalTestPage(false, true);
    }
 
-
    @Test
    public void testPage() throws Exception
    {
@@ -104,12 +94,12 @@ public class PagingFailoverTest extends FailoverTestBase
 
    public void internalTestPage(final boolean transacted, final boolean failBeforeConsume) throws Exception
    {
-      locator.setBlockOnNonDurableSend(true);
-      locator.setBlockOnDurableSend(true);
-      locator.setReconnectAttempts(-1);
+      locator.setBlockOnNonDurableSend(true)
+              .setBlockOnDurableSend(true)
+              .setReconnectAttempts(-1);
 
       sf = createSessionFactoryAndWaitForTopology(locator, 2);
-      session = sf.createSession(!transacted, !transacted, 0);
+      session = addClientSession(sf.createSession(!transacted, !transacted, 0));
 
       session.createQueue(PagingFailoverTest.ADDRESS, PagingFailoverTest.ADDRESS, true);
 
@@ -192,9 +182,9 @@ public class PagingFailoverTest extends FailoverTestBase
    @Test
    public void testExpireMessage() throws Exception
    {
-      locator.setBlockOnNonDurableSend(true);
-      locator.setBlockOnDurableSend(true);
-      locator.setReconnectAttempts(-1);
+      locator.setBlockOnNonDurableSend(true)
+              .setBlockOnDurableSend(true)
+              .setReconnectAttempts(-1);
 
       ClientSessionFactoryInternal sf = createSessionFactoryAndWaitForTopology(locator, 2);
       session = sf.createSession(true, true, 0);

http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/328611fd/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/QuorumVoteServerConnectTest.java
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/QuorumVoteServerConnectTest.java b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/QuorumVoteServerConnectTest.java
index 93d3f17..894e217 100644
--- a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/QuorumVoteServerConnectTest.java
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/QuorumVoteServerConnectTest.java
@@ -17,7 +17,7 @@
 package org.apache.activemq.artemis.tests.integration.cluster.failover;
 
 
-import org.apache.activemq.artemis.tests.util.ServiceTestBase;
+import org.apache.activemq.artemis.tests.util.ActiveMQTestBase;
 import org.apache.activemq.artemis.core.server.cluster.qourum.BooleanVote;
 import org.apache.activemq.artemis.core.server.cluster.qourum.QuorumVoteServerConnect;
 import org.apache.activemq.artemis.tests.integration.server.FakeStorageManager;
@@ -29,7 +29,7 @@ import java.util.Arrays;
 import java.util.Collection;
 
 @RunWith(Parameterized.class)
-public class QuorumVoteServerConnectTest extends ServiceTestBase
+public class QuorumVoteServerConnectTest extends ActiveMQTestBase
 {
 
    private final int size;

http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/328611fd/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/ReplicatedDistributionTest.java
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/ReplicatedDistributionTest.java b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/ReplicatedDistributionTest.java
index 45d279b..626230d 100644
--- a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/ReplicatedDistributionTest.java
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/ReplicatedDistributionTest.java
@@ -16,25 +16,24 @@
  */
 package org.apache.activemq.artemis.tests.integration.cluster.failover;
 
-import java.util.concurrent.CountDownLatch;
-import java.util.concurrent.TimeUnit;
-
 import org.apache.activemq.artemis.api.core.ActiveMQNotConnectedException;
 import org.apache.activemq.artemis.api.core.SimpleString;
 import org.apache.activemq.artemis.api.core.client.ClientConsumer;
 import org.apache.activemq.artemis.api.core.client.ClientMessage;
 import org.apache.activemq.artemis.api.core.client.ClientProducer;
 import org.apache.activemq.artemis.api.core.client.ClientSession;
-import org.apache.activemq.artemis.tests.integration.cluster.distribution.ClusterTestBase;
-import org.apache.activemq.artemis.tests.util.CountDownSessionFailureListener;
 import org.apache.activemq.artemis.core.client.impl.ClientSessionInternal;
 import org.apache.activemq.artemis.core.settings.impl.AddressSettings;
 import org.apache.activemq.artemis.spi.core.protocol.RemotingConnection;
-import org.junit.After;
+import org.apache.activemq.artemis.tests.integration.cluster.distribution.ClusterTestBase;
+import org.apache.activemq.artemis.tests.util.CountDownSessionFailureListener;
 import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Test;
 
+import java.util.concurrent.CountDownLatch;
+import java.util.concurrent.TimeUnit;
+
 public class ReplicatedDistributionTest extends ClusterTestBase
 {
 
@@ -199,8 +198,7 @@ public class ReplicatedDistributionTest extends ClusterTestBase
       setupClusterConnectionWithBackups("test", address, false, 1, true, 3, new int[]{2, 1});
       setupClusterConnectionWithBackups("test", address, false, 1, true, 2, new int[]{3});
 
-      AddressSettings as = new AddressSettings();
-      as.setRedistributionDelay(0);
+      AddressSettings as = new AddressSettings().setRedistributionDelay(0);
 
       for (int i : new int[]{1, 2, 3})
       {
@@ -223,27 +221,6 @@ public class ReplicatedDistributionTest extends ClusterTestBase
    }
 
    @Override
-   @After
-   public void tearDown() throws Exception
-   {
-      try
-      {
-         if (consThree != null)
-            consThree.close();
-         if (producer != null)
-            producer.close();
-         if (sessionOne != null)
-            sessionOne.close();
-         if (sessionThree != null)
-            sessionThree.close();
-      }
-      finally
-      {
-         super.tearDown();
-      }
-   }
-
-   @Override
    protected boolean isSharedStore()
    {
       return false;

http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/328611fd/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/ReplicatedFailoverTest.java
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/ReplicatedFailoverTest.java b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/ReplicatedFailoverTest.java
index 200a0db..bddf290 100644
--- a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/ReplicatedFailoverTest.java
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/ReplicatedFailoverTest.java
@@ -75,7 +75,7 @@ public class ReplicatedFailoverTest extends FailoverTest
 
          waitForRemoteBackupSynchronization(backupServer.getServer());
 
-         waitForServer(liveServer.getServer());
+         waitForServerToStart(liveServer.getServer());
 
          session = createSession(sf, true, true);
 
@@ -91,7 +91,7 @@ public class ReplicatedFailoverTest extends FailoverTest
 
          waitForRemoteBackupSynchronization(backupServer.getServer());
 
-         waitForServer(liveServer.getServer());
+         waitForServerToStart(liveServer.getServer());
 
          session = createSession(sf, true, true);
 
@@ -105,7 +105,7 @@ public class ReplicatedFailoverTest extends FailoverTest
 
          waitForRemoteBackupSynchronization(liveServer.getServer());
 
-         waitForServer(liveServer.getServer());
+         waitForServerToStart(liveServer.getServer());
 
          //this will give the backup time to stop fully
          waitForServerToStop(backupServer.getServer());

http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/328611fd/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/ReplicatedMultipleServerFailoverTest.java
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/ReplicatedMultipleServerFailoverTest.java b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/ReplicatedMultipleServerFailoverTest.java
index f49fde9..7554c61 100644
--- a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/ReplicatedMultipleServerFailoverTest.java
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/ReplicatedMultipleServerFailoverTest.java
@@ -162,7 +162,7 @@ public class ReplicatedMultipleServerFailoverTest extends MultipleServerFailover
    }
 
    @Override
-   public boolean useNetty()
+   public boolean isNetty()
    {
       return false;
    }

http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/328611fd/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/ReplicatedWithDelayFailoverTest.java
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/ReplicatedWithDelayFailoverTest.java b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/ReplicatedWithDelayFailoverTest.java
index e4dee69..deaaa3a 100644
--- a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/ReplicatedWithDelayFailoverTest.java
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/ReplicatedWithDelayFailoverTest.java
@@ -36,7 +36,7 @@ public class ReplicatedWithDelayFailoverTest extends ReplicatedFailoverTest
       super.setUp();
       syncDelay = new BackupSyncDelay(backupServer, liveServer);
       backupServer.start();
-      waitForServer(backupServer.getServer());
+      waitForServerToStart(backupServer.getServer());
    }
 
    @Override

http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/328611fd/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/SecurityFailoverTest.java
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/SecurityFailoverTest.java b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/SecurityFailoverTest.java
index 6803d31..5636e6c 100644
--- a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/SecurityFailoverTest.java
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/SecurityFailoverTest.java
@@ -94,7 +94,7 @@ public class SecurityFailoverTest extends FailoverTest
       TransportConfiguration liveConnector = getConnectorTransportConfiguration(true);
       TransportConfiguration backupConnector = getConnectorTransportConfiguration(false);
 
-      backupConfig = super.createDefaultConfig()
+      backupConfig = super.createDefaultInVMConfig()
          .clearAcceptorConfigurations()
          .addAcceptorConfiguration(getAcceptorTransportConfiguration(false))
          .setSecurityEnabled(true)
@@ -108,7 +108,7 @@ public class SecurityFailoverTest extends FailoverTest
       ActiveMQSecurityManagerImpl securityManager = installSecurity(backupServer);
       securityManager.getConfiguration().setDefaultUser(null);
 
-      liveConfig = super.createDefaultConfig()
+      liveConfig = super.createDefaultInVMConfig()
          .clearAcceptorConfigurations()
          .addAcceptorConfiguration(getAcceptorTransportConfiguration(true))
          .setSecurityEnabled(true)

http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/328611fd/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/SingleLiveMultipleBackupsFailoverTest.java
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/SingleLiveMultipleBackupsFailoverTest.java b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/SingleLiveMultipleBackupsFailoverTest.java
index efed080..46e471b 100644
--- a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/SingleLiveMultipleBackupsFailoverTest.java
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/failover/SingleLiveMultipleBackupsFailoverTest.java
@@ -30,7 +30,6 @@ import org.apache.activemq.artemis.core.server.impl.InVMNodeManager;
 import org.apache.activemq.artemis.tests.integration.IntegrationTestLogger;
 import org.apache.activemq.artemis.tests.integration.cluster.util.SameProcessActiveMQServer;
 import org.apache.activemq.artemis.tests.integration.cluster.util.TestableServer;
-import org.junit.After;
 import org.junit.Test;
 
 import java.util.HashMap;
@@ -70,9 +69,9 @@ public class SingleLiveMultipleBackupsFailoverTest extends MultipleBackupsFailov
       createBackupConfig(0, 5, 0, 1, 2, 3, 4);
 
       servers.get(0).start();
-      waitForServer(servers.get(0).getServer());
+      waitForServerToStart(servers.get(0).getServer());
       servers.get(1).start();
-      waitForServer(servers.get(1).getServer());
+      waitForServerToStart(servers.get(1).getServer());
       servers.get(2).start();
       servers.get(3).start();
       servers.get(4).start();
@@ -85,10 +84,11 @@ public class SingleLiveMultipleBackupsFailoverTest extends MultipleBackupsFailov
       // for logging and debugging
       topology.setOwner("testMultipleFailovers");
 
-      locator.setBlockOnNonDurableSend(true);
-      locator.setBlockOnDurableSend(true);
-      locator.setBlockOnAcknowledge(true);
-      locator.setReconnectAttempts(-1);
+      locator.setBlockOnNonDurableSend(true)
+              .setBlockOnDurableSend(true)
+              .setBlockOnAcknowledge(true)
+              .setReconnectAttempts(-1);
+
       ClientSessionFactoryInternal sf = createSessionFactoryAndWaitForTopology(locator, 2);
       int backupNode;
       ClientSession session = sendAndConsume(sf, true);
@@ -133,10 +133,9 @@ public class SingleLiveMultipleBackupsFailoverTest extends MultipleBackupsFailov
    {
       TransportConfiguration backupConnector = createTransportConfiguration(isNetty(), false, generateParams(nodeid, isNetty()));
 
-      Configuration config1 = super.createDefaultConfig()
+      Configuration config1 = super.createDefaultInVMConfig()
          .clearAcceptorConfigurations()
          .addAcceptorConfiguration(createTransportConfiguration(isNetty(), true, generateParams(nodeid, isNetty())))
-         .setSecurityEnabled(false)
          .setHAPolicyConfiguration(sharedStore ? new SharedStoreSlavePolicyConfiguration() : new ReplicatedPolicyConfiguration())
          .addConnectorConfiguration(backupConnector.getName(), backupConnector)
          .setBindingsDirectory(getBindingsDir() + "_" + liveNode)
@@ -160,10 +159,9 @@ public class SingleLiveMultipleBackupsFailoverTest extends MultipleBackupsFailov
    {
       TransportConfiguration liveConnector = createTransportConfiguration(isNetty(), false, generateParams(liveNode, isNetty()));
 
-      Configuration config0 = super.createDefaultConfig()
+      Configuration config0 = super.createDefaultInVMConfig()
          .clearAcceptorConfigurations()
          .addAcceptorConfiguration(createTransportConfiguration(isNetty(), true, generateParams(liveNode, isNetty())))
-         .setSecurityEnabled(false)
          .setHAPolicyConfiguration(sharedStore ? new SharedStoreMasterPolicyConfiguration() : new ReplicatedPolicyConfiguration())
          .addClusterConfiguration(basicClusterConnectionConfig(liveConnector.getName()))
          .addConnectorConfiguration(liveConnector.getName(), liveConnector)
@@ -172,7 +170,9 @@ public class SingleLiveMultipleBackupsFailoverTest extends MultipleBackupsFailov
          .setPagingDirectory(getPageDir() + "_" + liveNode)
          .setLargeMessagesDirectory(getLargeMessagesDir() + "_" + liveNode);
 
-      servers.put(liveNode, new SameProcessActiveMQServer(createInVMFailoverServer(true, config0, nodeManager, liveNode)));
+      SameProcessActiveMQServer server = new SameProcessActiveMQServer(createInVMFailoverServer(true, config0, nodeManager, liveNode));
+      addActiveMQComponent(server);
+      servers.put(liveNode, server);
    }
 
    @Override
@@ -180,25 +180,4 @@ public class SingleLiveMultipleBackupsFailoverTest extends MultipleBackupsFailov
    {
       return false;
    }
-
-   @Override
-   @After
-   public void tearDown() throws Exception
-   {
-      closeServerLocator(locator);
-      for (TestableServer server : servers.values())
-      {
-         try
-         {
-            stopComponent(server);
-         }
-         catch (Exception e)
-         {
-            // ignore
-         }
-      }
-      servers.clear();
-      super.tearDown();
-   }
-
 }

http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/328611fd/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/reattach/MultiThreadRandomReattachTest.java
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/reattach/MultiThreadRandomReattachTest.java b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/reattach/MultiThreadRandomReattachTest.java
index edeebac..f4a2b15 100644
--- a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/reattach/MultiThreadRandomReattachTest.java
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/reattach/MultiThreadRandomReattachTest.java
@@ -16,7 +16,6 @@
  */
 package org.apache.activemq.artemis.tests.integration.cluster.reattach;
 
-import org.apache.activemq.artemis.api.core.TransportConfiguration;
 import org.apache.activemq.artemis.api.core.client.ClientMessage;
 import org.apache.activemq.artemis.core.config.Configuration;
 
@@ -29,12 +28,10 @@ public class MultiThreadRandomReattachTest extends MultiThreadRandomReattachTest
    @Override
    protected void start() throws Exception
    {
-      Configuration liveConf = createDefaultConfig()
-         .setSecurityEnabled(false)
-         .addAcceptorConfiguration(new TransportConfiguration(INVM_ACCEPTOR_FACTORY));
-      liveServer = createServer(false, liveConf);
-      liveServer.start();
-      waitForServer(liveServer);
+      Configuration liveConf = createDefaultInVMConfig();
+      server = createServer(false, liveConf);
+      server.start();
+      waitForServerToStart(server);
    }
 
    @Override

http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/328611fd/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/reattach/MultiThreadRandomReattachTestBase.java
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/reattach/MultiThreadRandomReattachTestBase.java b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/reattach/MultiThreadRandomReattachTestBase.java
index 65fb198..8d9a507 100644
--- a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/reattach/MultiThreadRandomReattachTestBase.java
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/reattach/MultiThreadRandomReattachTestBase.java
@@ -15,23 +15,8 @@
  * limitations under the License.
  */
 package org.apache.activemq.artemis.tests.integration.cluster.reattach;
-import org.apache.activemq.artemis.api.core.ActiveMQException;
-import org.apache.activemq.artemis.tests.integration.IntegrationTestLogger;
-import org.apache.activemq.artemis.tests.util.ServiceTestBase;
-import org.junit.Before;
-import org.junit.After;
-
-import org.junit.Test;
-
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Map;
-import java.util.Set;
-import java.util.concurrent.CountDownLatch;
-import java.util.concurrent.TimeUnit;
-
-import org.junit.Assert;
 
+import org.apache.activemq.artemis.api.core.ActiveMQException;
 import org.apache.activemq.artemis.api.core.SimpleString;
 import org.apache.activemq.artemis.api.core.client.ClientConsumer;
 import org.apache.activemq.artemis.api.core.client.ClientMessage;
@@ -44,7 +29,18 @@ import org.apache.activemq.artemis.core.remoting.impl.invm.InVMRegistry;
 import org.apache.activemq.artemis.core.server.ActiveMQServer;
 import org.apache.activemq.artemis.jms.client.ActiveMQBytesMessage;
 import org.apache.activemq.artemis.jms.client.ActiveMQTextMessage;
+import org.apache.activemq.artemis.tests.integration.IntegrationTestLogger;
+import org.apache.activemq.artemis.tests.util.ActiveMQTestBase;
 import org.apache.activemq.artemis.tests.util.RandomUtil;
+import org.junit.Assert;
+import org.junit.Test;
+
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Set;
+import java.util.concurrent.CountDownLatch;
+import java.util.concurrent.TimeUnit;
 
 public abstract class MultiThreadRandomReattachTestBase extends MultiThreadReattachSupportTestBase
 {
@@ -61,7 +57,7 @@ public abstract class MultiThreadRandomReattachTestBase extends MultiThreadReatt
    // Attributes ----------------------------------------------------
    protected static final SimpleString ADDRESS = new SimpleString("FailoverTestAddress");
 
-   protected ActiveMQServer liveServer;
+   protected ActiveMQServer server;
 
    // Static --------------------------------------------------------
 
@@ -1264,26 +1260,6 @@ public abstract class MultiThreadRandomReattachTestBase extends MultiThreadReatt
       return 10;
    }
 
-   @Override
-   @Before
-   public void setUp() throws Exception
-   {
-      super.setUp();
-
-      log.info("************ Starting test " + getName());
-   }
-
-   @Override
-   @After
-   public void tearDown() throws Exception
-   {
-      ServiceTestBase.stopComponent(liveServer);
-
-      liveServer = null;
-
-      super.tearDown();
-   }
-
    // Private -------------------------------------------------------
 
    private void runTestMultipleThreads(final RunnableT runnable,
@@ -1308,16 +1284,16 @@ public abstract class MultiThreadRandomReattachTestBase extends MultiThreadReatt
    @Override
    protected ServerLocator createLocator() throws Exception
    {
-      ServerLocator locator = createInVMNonHALocator();
-      locator.setReconnectAttempts(-1);
-      locator.setConfirmationWindowSize(1024 * 1024);
+      ServerLocator locator = createInVMNonHALocator()
+              .setReconnectAttempts(-1)
+              .setConfirmationWindowSize(1024 * 1024);
       return locator;
    }
 
    @Override
    protected void stop() throws Exception
    {
-      ServiceTestBase.stopComponent(liveServer);
+      ActiveMQTestBase.stopComponent(server);
 
       System.gc();
 

http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/328611fd/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/reattach/MultiThreadReattachSupportTestBase.java
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/reattach/MultiThreadReattachSupportTestBase.java b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/reattach/MultiThreadReattachSupportTestBase.java
index cb6c3ad..0614403 100644
--- a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/reattach/MultiThreadReattachSupportTestBase.java
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/reattach/MultiThreadReattachSupportTestBase.java
@@ -25,7 +25,7 @@ import org.apache.activemq.artemis.core.client.impl.ClientSessionInternal;
 import org.apache.activemq.artemis.core.protocol.core.impl.RemotingConnectionImpl;
 import org.apache.activemq.artemis.core.remoting.impl.invm.InVMConnector;
 import org.apache.activemq.artemis.tests.integration.IntegrationTestLogger;
-import org.apache.activemq.artemis.tests.util.ServiceTestBase;
+import org.apache.activemq.artemis.tests.util.ActiveMQTestBase;
 import org.junit.After;
 import org.junit.Assert;
 import org.junit.Before;
@@ -35,7 +35,7 @@ import java.util.List;
 import java.util.Timer;
 import java.util.TimerTask;
 
-public abstract class MultiThreadReattachSupportTestBase extends ServiceTestBase
+public abstract class MultiThreadReattachSupportTestBase extends ActiveMQTestBase
 {
 
    private final IntegrationTestLogger log = IntegrationTestLogger.LOGGER;
@@ -120,8 +120,8 @@ public abstract class MultiThreadReattachSupportTestBase extends ServiceTestBase
 
                   // Case a failure happened here, it should print the Thread dump
                   // Sending it to System.out, as it would show on the Tests report
-                  System.out.println(ServiceTestBase.threadDump(" - fired by MultiThreadRandomReattachTestBase::runTestMultipleThreads (" + t.getLocalizedMessage() +
-                                                             ")"));
+                  System.out.println(ActiveMQTestBase.threadDump(" - fired by MultiThreadRandomReattachTestBase::runTestMultipleThreads (" + t.getLocalizedMessage() +
+                                                                         ")"));
                }
             }
          }

http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/328611fd/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/reattach/NettyMultiThreadRandomReattachTest.java
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/reattach/NettyMultiThreadRandomReattachTest.java b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/reattach/NettyMultiThreadRandomReattachTest.java
index 65fe58b..67d88e2 100644
--- a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/reattach/NettyMultiThreadRandomReattachTest.java
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/reattach/NettyMultiThreadRandomReattachTest.java
@@ -16,7 +16,6 @@
  */
 package org.apache.activemq.artemis.tests.integration.cluster.reattach;
 
-import org.apache.activemq.artemis.api.core.TransportConfiguration;
 import org.apache.activemq.artemis.api.core.client.ServerLocator;
 import org.apache.activemq.artemis.core.config.Configuration;
 
@@ -25,24 +24,19 @@ public class NettyMultiThreadRandomReattachTest extends MultiThreadRandomReattac
    @Override
    protected void start() throws Exception
    {
-      Configuration liveConf = createDefaultConfig()
-         .setJMXManagementEnabled(false)
-         .setSecurityEnabled(false)
-         .clearAcceptorConfigurations()
-         .addAcceptorConfiguration(new TransportConfiguration(NETTY_ACCEPTOR_FACTORY));
-      liveServer = createServer(false, liveConf);
-      liveServer.start();
-      waitForServer(liveServer);
+      Configuration liveConf = createDefaultNettyConfig();
+      server = createServer(false, liveConf);
+      server.start();
+      waitForServerToStart(server);
    }
 
    @Override
    protected ServerLocator createLocator() throws Exception
    {
-      ServerLocator locator = createNettyNonHALocator();
-      locator.setReconnectAttempts(-1);
-      locator.setConfirmationWindowSize(1024 * 1024);
-      locator.setAckBatchSize(0);
-      return  locator;
+      return createNettyNonHALocator()
+              .setReconnectAttempts(-1)
+              .setConfirmationWindowSize(1024 * 1024)
+              .setAckBatchSize(0);
    }
 
 }

http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/328611fd/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/reattach/OrderReattachTest.java
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/reattach/OrderReattachTest.java b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/reattach/OrderReattachTest.java
index 8883fe5..2679b8f 100644
--- a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/reattach/OrderReattachTest.java
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/reattach/OrderReattachTest.java
@@ -40,9 +40,9 @@ import org.apache.activemq.artemis.core.protocol.core.impl.RemotingConnectionImp
 import org.apache.activemq.artemis.core.server.ActiveMQServer;
 import org.apache.activemq.artemis.jms.client.ActiveMQTextMessage;
 import org.apache.activemq.artemis.tests.integration.IntegrationTestLogger;
-import org.apache.activemq.artemis.tests.util.ServiceTestBase;
+import org.apache.activemq.artemis.tests.util.ActiveMQTestBase;
 
-public class OrderReattachTest extends ServiceTestBase
+public class OrderReattachTest extends ActiveMQTestBase
 {
    // Constants -----------------------------------------------------
 
@@ -70,11 +70,12 @@ public class OrderReattachTest extends ServiceTestBase
       server = createServer(false, isNetty);
 
       server.start();
-      ServerLocator locator = createFactory(isNetty);
-      locator.setReconnectAttempts(-1);
-      locator.setConfirmationWindowSize(1024 * 1024);
-      locator.setBlockOnNonDurableSend(false);
-      locator.setBlockOnAcknowledge(false);
+      ServerLocator locator = createFactory(isNetty)
+              .setReconnectAttempts(-1)
+              .setConfirmationWindowSize(1024 * 1024)
+              .setBlockOnNonDurableSend(false)
+              .setBlockOnAcknowledge(false);
+
       ClientSessionFactory sf = createSessionFactory(locator);
 
       final ClientSession session = sf.createSession(false, true, true);

http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/328611fd/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/reattach/RandomReattachTest.java
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/reattach/RandomReattachTest.java b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/reattach/RandomReattachTest.java
index bc573c4..f45398a 100644
--- a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/reattach/RandomReattachTest.java
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/reattach/RandomReattachTest.java
@@ -19,8 +19,6 @@ package org.apache.activemq.artemis.tests.integration.cluster.reattach;
 import org.apache.activemq.artemis.api.core.ActiveMQException;
 import org.apache.activemq.artemis.api.core.ActiveMQNotConnectedException;
 import org.apache.activemq.artemis.api.core.SimpleString;
-import org.apache.activemq.artemis.api.core.TransportConfiguration;
-import org.apache.activemq.artemis.api.core.client.ActiveMQClient;
 import org.apache.activemq.artemis.api.core.client.ClientConsumer;
 import org.apache.activemq.artemis.api.core.client.ClientMessage;
 import org.apache.activemq.artemis.api.core.client.ClientProducer;
@@ -30,13 +28,12 @@ import org.apache.activemq.artemis.api.core.client.MessageHandler;
 import org.apache.activemq.artemis.api.core.client.ServerLocator;
 import org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl;
 import org.apache.activemq.artemis.core.client.impl.ClientSessionInternal;
-import org.apache.activemq.artemis.core.config.Configuration;
 import org.apache.activemq.artemis.core.remoting.impl.invm.InVMRegistry;
 import org.apache.activemq.artemis.core.server.ActiveMQServer;
 import org.apache.activemq.artemis.core.server.ActiveMQServers;
 import org.apache.activemq.artemis.jms.client.ActiveMQTextMessage;
 import org.apache.activemq.artemis.tests.integration.IntegrationTestLogger;
-import org.apache.activemq.artemis.tests.util.ServiceTestBase;
+import org.apache.activemq.artemis.tests.util.ActiveMQTestBase;
 import org.junit.After;
 import org.junit.Assert;
 import org.junit.Before;
@@ -50,7 +47,7 @@ import java.util.TimerTask;
 import java.util.concurrent.CountDownLatch;
 import java.util.concurrent.TimeUnit;
 
-public class RandomReattachTest extends ServiceTestBase
+public class RandomReattachTest extends ActiveMQTestBase
 {
    private static final IntegrationTestLogger log = IntegrationTestLogger.LOGGER;
 
@@ -62,7 +59,7 @@ public class RandomReattachTest extends ServiceTestBase
 
    private static final SimpleString ADDRESS = new SimpleString("FailoverTestAddress");
 
-   private ActiveMQServer liveService;
+   private ActiveMQServer server;
 
    private Timer timer;
 
@@ -249,12 +246,11 @@ public class RandomReattachTest extends ServiceTestBase
       {
          RandomReattachTest.log.info("####" + getName() + " iteration #" + its);
          start();
-         ServerLocator locator = ActiveMQClient.createServerLocatorWithoutHA(new TransportConfiguration(ServiceTestBase.INVM_CONNECTOR_FACTORY));
+         ServerLocator locator = createInVMNonHALocator()
+                 .setReconnectAttempts(-1)
+                 .setConfirmationWindowSize(1024 * 1024);
 
-         locator.setReconnectAttempts(-1);
-         locator.setConfirmationWindowSize(1024 * 1024);
-
-         ClientSessionFactoryImpl sf = (ClientSessionFactoryImpl)createSessionFactory(locator);
+         ClientSessionFactory sf = createSessionFactory(locator);
 
 
          ClientSession session = sf.createSession(false, false, false);
@@ -266,16 +262,6 @@ public class RandomReattachTest extends ServiceTestBase
             runnable.run(sf);
          }
          while (!failer.isExecuted());
-
-         session.close();
-
-         locator.close();
-
-         Assert.assertEquals(0, sf.numSessions());
-
-         Assert.assertEquals(0, sf.numConnections());
-
-         stop();
       }
    }
 
@@ -1475,8 +1461,6 @@ public class RandomReattachTest extends ServiceTestBase
    {
       timer.cancel();
 
-      InVMRegistry.instance.clear();
-
       super.tearDown();
    }
 
@@ -1493,20 +1477,17 @@ public class RandomReattachTest extends ServiceTestBase
 
    private void start() throws Exception
    {
-      Configuration liveConf = createDefaultConfig()
-         .setSecurityEnabled(false)
-         .addAcceptorConfiguration(new TransportConfiguration("org.apache.activemq.artemis.core.remoting.impl.invm.InVMAcceptorFactory"));
-      liveService = ActiveMQServers.newActiveMQServer(liveConf, false);
-      liveService.start();
+      server = addServer(ActiveMQServers.newActiveMQServer(createDefaultInVMConfig(), false));
+      server.start();
    }
 
    private void stop() throws Exception
    {
-      liveService.stop();
+      server.stop();
 
       Assert.assertEquals(0, InVMRegistry.instance.size());
 
-      liveService = null;
+      server = null;
    }
 
    // Inner classes -------------------------------------------------
@@ -1579,8 +1560,5 @@ public class RandomReattachTest extends ServiceTestBase
       }
 
       public abstract void onMessageAssert(ClientMessage message);
-
    }
-
-
 }

http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/328611fd/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/reattach/ReattachTest.java
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/reattach/ReattachTest.java b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/reattach/ReattachTest.java
index 4182a0a..9ad5934 100644
--- a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/reattach/ReattachTest.java
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/reattach/ReattachTest.java
@@ -16,11 +16,6 @@
  */
 package org.apache.activemq.artemis.tests.integration.cluster.reattach;
 
-import java.util.Timer;
-import java.util.TimerTask;
-import java.util.concurrent.CountDownLatch;
-import java.util.concurrent.atomic.AtomicInteger;
-
 import org.apache.activemq.artemis.api.core.ActiveMQException;
 import org.apache.activemq.artemis.api.core.ActiveMQExceptionType;
 import org.apache.activemq.artemis.api.core.ActiveMQNotConnectedException;
@@ -33,28 +28,32 @@ import org.apache.activemq.artemis.api.core.client.ClientProducer;
 import org.apache.activemq.artemis.api.core.client.ClientSession;
 import org.apache.activemq.artemis.api.core.client.ServerLocator;
 import org.apache.activemq.artemis.api.core.client.SessionFailureListener;
-import org.apache.activemq.artemis.tests.integration.IntegrationTestLogger;
-import org.apache.activemq.artemis.tests.util.ServiceTestBase;
 import org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryInternal;
 import org.apache.activemq.artemis.core.client.impl.ClientSessionInternal;
 import org.apache.activemq.artemis.core.protocol.core.Packet;
 import org.apache.activemq.artemis.core.protocol.core.impl.wireformat.SessionProducerCreditsMessage;
 import org.apache.activemq.artemis.core.remoting.impl.invm.InVMConnector;
-import org.apache.activemq.artemis.core.remoting.impl.invm.InVMRegistry;
 import org.apache.activemq.artemis.core.server.ActiveMQServer;
 import org.apache.activemq.artemis.jms.client.ActiveMQTextMessage;
 import org.apache.activemq.artemis.spi.core.protocol.RemotingConnection;
+import org.apache.activemq.artemis.tests.integration.IntegrationTestLogger;
+import org.apache.activemq.artemis.tests.util.ActiveMQTestBase;
 import org.junit.After;
 import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Test;
 
-public class ReattachTest extends ServiceTestBase
+import java.util.Timer;
+import java.util.TimerTask;
+import java.util.concurrent.CountDownLatch;
+import java.util.concurrent.atomic.AtomicInteger;
+
+public class ReattachTest extends ActiveMQTestBase
 {
    private static final IntegrationTestLogger log = IntegrationTestLogger.LOGGER;
 
    private static final SimpleString ADDRESS = new SimpleString("FailoverTestAddress");
-   private ActiveMQServer service;
+   private ActiveMQServer server;
    private ServerLocator locator;
 
    /*
@@ -69,10 +68,11 @@ public class ReattachTest extends ServiceTestBase
 
       final int reconnectAttempts = 1;
 
-      locator.setRetryInterval(retryInterval);
-      locator.setRetryIntervalMultiplier(retryMultiplier);
-      locator.setReconnectAttempts(reconnectAttempts);
-      locator.setConfirmationWindowSize(1024 * 1024);
+      locator.setRetryInterval(retryInterval)
+              .setRetryIntervalMultiplier(retryMultiplier)
+              .setReconnectAttempts(reconnectAttempts)
+              .setConfirmationWindowSize(1024 * 1024);
+
       ClientSessionFactoryInternal sf = (ClientSessionFactoryInternal) createSessionFactory(locator);
 
       ClientSession session = sf.createSession(false, true, true);
@@ -146,11 +146,11 @@ public class ReattachTest extends ServiceTestBase
 
       final int reconnectAttempts = 1;
 
-      locator.setRetryInterval(retryInterval);
-      locator.setRetryIntervalMultiplier(retryMultiplier);
-      locator.setReconnectAttempts(reconnectAttempts);
-      locator.setConfirmationWindowSize(1024 * 1024);
-      locator.setProducerWindowSize(1000);
+      locator.setRetryInterval(retryInterval)
+              .setRetryIntervalMultiplier(retryMultiplier)
+              .setReconnectAttempts(reconnectAttempts)
+              .setConfirmationWindowSize(1024 * 1024)
+              .setProducerWindowSize(1000);
 
       final AtomicInteger count = new AtomicInteger(0);
 
@@ -219,10 +219,11 @@ public class ReattachTest extends ServiceTestBase
 
       final int reconnectAttempts = -1;
 
-      locator.setRetryInterval(retryInterval);
-      locator.setRetryIntervalMultiplier(retryMultiplier);
-      locator.setReconnectAttempts(reconnectAttempts);
-      locator.setConfirmationWindowSize(1024 * 1024);
+      locator.setRetryInterval(retryInterval)
+              .setRetryIntervalMultiplier(retryMultiplier)
+              .setReconnectAttempts(reconnectAttempts)
+              .setConfirmationWindowSize(1024 * 1024);
+
       ClientSessionFactoryInternal sf = (ClientSessionFactoryInternal) createSessionFactory(locator);
 
       ClientSession session = sf.createSession(false, true, true);
@@ -310,10 +311,11 @@ public class ReattachTest extends ServiceTestBase
 
       final long asyncFailDelay = 2000;
 
-      locator.setRetryInterval(retryInterval);
-      locator.setRetryIntervalMultiplier(retryMultiplier);
-      locator.setReconnectAttempts(reconnectAttempts);
-      locator.setConfirmationWindowSize(1024 * 1024);
+      locator.setRetryInterval(retryInterval)
+              .setRetryIntervalMultiplier(retryMultiplier)
+              .setReconnectAttempts(reconnectAttempts)
+              .setConfirmationWindowSize(1024 * 1024);
+
       ClientSessionFactoryInternal sf = (ClientSessionFactoryInternal) createSessionFactory(locator);
 
       ClientSession session = sf.createSession(false, true, true);
@@ -432,10 +434,11 @@ public class ReattachTest extends ServiceTestBase
 
       final int reconnectAttempts = 3;
 
-      locator.setRetryInterval(retryInterval);
-      locator.setRetryIntervalMultiplier(retryMultiplier);
-      locator.setReconnectAttempts(reconnectAttempts);
-      locator.setConfirmationWindowSize(1024 * 1024);
+      locator.setRetryInterval(retryInterval)
+              .setRetryIntervalMultiplier(retryMultiplier)
+              .setReconnectAttempts(reconnectAttempts)
+              .setConfirmationWindowSize(1024 * 1024);
+
       ClientSessionFactoryInternal sf = (ClientSessionFactoryInternal) createSessionFactory(locator);
 
       ClientSession session = sf.createSession(false, true, true);
@@ -527,10 +530,11 @@ public class ReattachTest extends ServiceTestBase
 
          final int reconnectAttempts = -1;
 
-         locator.setRetryInterval(retryInterval);
-         locator.setRetryIntervalMultiplier(retryMultiplier);
-         locator.setReconnectAttempts(reconnectAttempts);
-         locator.setConfirmationWindowSize(1024 * 1024);
+         locator.setRetryInterval(retryInterval)
+                 .setRetryIntervalMultiplier(retryMultiplier)
+                 .setReconnectAttempts(reconnectAttempts)
+                 .setConfirmationWindowSize(1024 * 1024);
+
          final ClientSessionFactoryInternal sf = (ClientSessionFactoryInternal) createSessionFactory(locator);
 
          session = sf.createSession();
@@ -638,10 +642,11 @@ public class ReattachTest extends ServiceTestBase
 
       final int reconnectAttempts = -1;
 
-      locator.setRetryInterval(retryInterval);
-      locator.setRetryIntervalMultiplier(retryMultiplier);
-      locator.setReconnectAttempts(reconnectAttempts);
-      locator.setConfirmationWindowSize(1024 * 1024);
+      locator.setRetryInterval(retryInterval)
+              .setRetryIntervalMultiplier(retryMultiplier)
+              .setReconnectAttempts(reconnectAttempts)
+              .setConfirmationWindowSize(1024 * 1024);
+
       final ClientSessionFactoryInternal sf = (ClientSessionFactoryInternal) createSessionFactory(locator);
 
       InVMConnector.failOnCreateConnection = true;
@@ -737,10 +742,11 @@ public class ReattachTest extends ServiceTestBase
 
       final int reconnectAttempts = -1;
 
-      locator.setRetryInterval(retryInterval);
-      locator.setRetryIntervalMultiplier(retryMultiplier);
-      locator.setReconnectAttempts(reconnectAttempts);
-      locator.setConfirmationWindowSize(1024 * 1024);
+      locator.setRetryInterval(retryInterval)
+              .setRetryIntervalMultiplier(retryMultiplier)
+              .setReconnectAttempts(reconnectAttempts)
+              .setConfirmationWindowSize(1024 * 1024);
+
       ClientSessionFactoryInternal sf = (ClientSessionFactoryInternal) createSessionFactory(locator);
 
       ClientSession session = sf.createSession(false, true, true);
@@ -810,10 +816,11 @@ public class ReattachTest extends ServiceTestBase
 
       final int reconnectAttempts = 10;
 
-      locator.setRetryInterval(retryInterval);
-      locator.setRetryIntervalMultiplier(retryMultiplier);
-      locator.setReconnectAttempts(reconnectAttempts);
-      locator.setConfirmationWindowSize(1024 * 1024);
+      locator.setRetryInterval(retryInterval)
+              .setRetryIntervalMultiplier(retryMultiplier)
+              .setReconnectAttempts(reconnectAttempts)
+              .setConfirmationWindowSize(1024 * 1024);
+
       ClientSessionFactoryInternal sf = (ClientSessionFactoryInternal) createSessionFactory(locator);
 
       ClientSession session = sf.createSession(false, true, true);
@@ -878,10 +885,11 @@ public class ReattachTest extends ServiceTestBase
 
       final int reconnectAttempts = -1;
 
-      locator.setRetryInterval(retryInterval);
-      locator.setRetryIntervalMultiplier(retryMultiplier);
-      locator.setReconnectAttempts(reconnectAttempts);
-      locator.setConfirmationWindowSize(1024 * 1024);
+      locator.setRetryInterval(retryInterval)
+              .setRetryIntervalMultiplier(retryMultiplier)
+              .setReconnectAttempts(reconnectAttempts)
+              .setConfirmationWindowSize(1024 * 1024);
+
       ClientSessionFactoryInternal sf = (ClientSessionFactoryInternal) createSessionFactory(locator);
 
       ClientSession session = sf.createSession(false, true, true);
@@ -971,10 +979,11 @@ public class ReattachTest extends ServiceTestBase
 
       final int reconnectAttempts = -1;
 
-      locator.setRetryInterval(retryInterval);
-      locator.setRetryIntervalMultiplier(retryMultiplier);
-      locator.setReconnectAttempts(reconnectAttempts);
-      locator.setConfirmationWindowSize(1024 * 1024);
+      locator.setRetryInterval(retryInterval)
+              .setRetryIntervalMultiplier(retryMultiplier)
+              .setReconnectAttempts(reconnectAttempts)
+              .setConfirmationWindowSize(1024 * 1024);
+
       ClientSessionFactoryInternal sf = (ClientSessionFactoryInternal) createSessionFactory(locator);
 
       ClientSession session = sf.createSession(false, true, true);
@@ -1049,11 +1058,12 @@ public class ReattachTest extends ServiceTestBase
 
       final long maxRetryInterval = 1000;
 
-      locator.setRetryInterval(retryInterval);
-      locator.setRetryIntervalMultiplier(retryMultiplier);
-      locator.setReconnectAttempts(reconnectAttempts);
-      locator.setMaxRetryInterval(maxRetryInterval);
-      locator.setConfirmationWindowSize(1024 * 1024);
+      locator.setRetryInterval(retryInterval)
+              .setRetryIntervalMultiplier(retryMultiplier)
+              .setReconnectAttempts(reconnectAttempts)
+              .setMaxRetryInterval(maxRetryInterval)
+              .setConfirmationWindowSize(1024 * 1024);
+
       ClientSessionFactoryInternal sf = (ClientSessionFactoryInternal) createSessionFactory(locator);
 
       ClientSession session = sf.createSession(false, true, true);
@@ -1129,11 +1139,11 @@ public class ReattachTest extends ServiceTestBase
    {
       super.setUp();
 
-      service = createServer(false, false);
+      server = createServer(false, false);
 
-      service.start();
+      server.start();
 
-      locator = createFactory(false);
+      locator = createInVMNonHALocator();
    }
 
    @Override
@@ -1142,11 +1152,6 @@ public class ReattachTest extends ServiceTestBase
    {
       InVMConnector.resetFailures();
 
-      closeServerLocator(locator);
-      stopComponent(service);
-
-      Assert.assertEquals(0, InVMRegistry.instance.size());
-
       super.tearDown();
    }
 

http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/328611fd/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/topology/HAClientTopologyTest.java
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/topology/HAClientTopologyTest.java b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/topology/HAClientTopologyTest.java
index 0ad26c4..e677944 100644
--- a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/topology/HAClientTopologyTest.java
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/topology/HAClientTopologyTest.java
@@ -19,7 +19,7 @@ package org.apache.activemq.artemis.tests.integration.cluster.topology;
 import org.apache.activemq.artemis.api.core.TransportConfiguration;
 import org.apache.activemq.artemis.api.core.client.ActiveMQClient;
 import org.apache.activemq.artemis.api.core.client.ServerLocator;
-import org.apache.activemq.artemis.tests.util.ServiceTestBase;
+import org.apache.activemq.artemis.tests.util.ActiveMQTestBase;
 
 public class HAClientTopologyTest extends TopologyClusterTestBase
 {
@@ -57,10 +57,10 @@ public class HAClientTopologyTest extends TopologyClusterTestBase
    @Override
    protected ServerLocator createHAServerLocator()
    {
-      TransportConfiguration tc = ServiceTestBase.createTransportConfiguration(isNetty(), false, ServiceTestBase.generateParams(0, isNetty()));
+      TransportConfiguration tc = ActiveMQTestBase.createTransportConfiguration(isNetty(), false, ActiveMQTestBase.generateParams(0, isNetty()));
       ServerLocator locator = addServerLocator(ActiveMQClient.createServerLocatorWithHA(tc));
-      locator.setBlockOnNonDurableSend(true);
-      locator.setBlockOnDurableSend(true);
+      locator.setBlockOnNonDurableSend(true)
+              .setBlockOnDurableSend(true);
       return locator;
    }
 }

http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/328611fd/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/topology/HAClientTopologyWithDiscoveryTest.java
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/topology/HAClientTopologyWithDiscoveryTest.java b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/topology/HAClientTopologyWithDiscoveryTest.java
index 910fe07..1225d4b 100644
--- a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/topology/HAClientTopologyWithDiscoveryTest.java
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/topology/HAClientTopologyWithDiscoveryTest.java
@@ -65,8 +65,8 @@ public class HAClientTopologyWithDiscoveryTest extends TopologyClusterTestBase
                                                                           .setBroadcastEndpointFactory(new UDPBroadcastEndpointFactory()
                                                                                                              .setGroupAddress(groupAddress)
                                                                                                              .setGroupPort(groupPort)));
-      locator.setBlockOnNonDurableSend(true);
-      locator.setBlockOnDurableSend(true);
+      locator.setBlockOnNonDurableSend(true)
+              .setBlockOnDurableSend(true);
       addServerLocator(locator);
       return locator;
    }