diff --git a/.travis.yml b/.travis.yml
index bf40db2e..1237cf76 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -5,6 +5,8 @@ cache:
language: java
jdk:
- oraclejdk8
+services:
+ - rabbitmq
before_install:
- git config user.name "$GIT_NAME"
- git config user.email "$GIT_EMAIL"
diff --git a/spring-cloud-netflix-hystrix-amqp/pom.xml b/spring-cloud-netflix-hystrix-amqp/pom.xml
index 4dc95cb9..d496c639 100644
--- a/spring-cloud-netflix-hystrix-amqp/pom.xml
+++ b/spring-cloud-netflix-hystrix-amqp/pom.xml
@@ -76,6 +76,11 @@
compile
true
+
+ org.springframework.boot
+ spring-boot-starter-test
+ test
+
org.springframework.boot
spring-boot-starter-web
diff --git a/spring-cloud-netflix-hystrix-amqp/src/test/java/org/springframework/netflix/hystrix/amqp/HystrixAmqpTests.java b/spring-cloud-netflix-hystrix-amqp/src/test/java/org/springframework/netflix/hystrix/amqp/HystrixAmqpTests.java
new file mode 100644
index 00000000..43e7766d
--- /dev/null
+++ b/spring-cloud-netflix-hystrix-amqp/src/test/java/org/springframework/netflix/hystrix/amqp/HystrixAmqpTests.java
@@ -0,0 +1,47 @@
+package org.springframework.netflix.hystrix.amqp;
+
+import com.netflix.hystrix.contrib.javanica.annotation.HystrixCommand;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
+import org.springframework.boot.test.IntegrationTest;
+import org.springframework.boot.test.SpringApplicationConfiguration;
+import org.springframework.cloud.client.circuitbreaker.EnableCircuitBreaker;
+import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
+import org.springframework.test.annotation.DirtiesContext;
+import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
+import org.springframework.test.context.web.WebAppConfiguration;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * @author Spencer Gibb
+ */
+@RunWith(SpringJUnit4ClassRunner.class)
+@SpringApplicationConfiguration(classes = HystrixAmqpTests.Application.class)
+@WebAppConfiguration
+@IntegrationTest({ "server.port=0", "spring.jmx.enabled=true" })
+@DirtiesContext
+public class HystrixAmqpTests {
+
+ @EnableAutoConfiguration
+ @EnableDiscoveryClient
+ @EnableCircuitBreaker
+ @RestController
+ public static class Application {
+
+ @HystrixCommand
+ @RequestMapping("/")
+ public String hello() {
+ return "Hello World";
+ }
+
+ public static void main(String[] args) {
+ SpringApplication.run(Application.class, args);
+ }
+ }
+
+ @Test
+ public void contextLoads() { }
+}
diff --git a/spring-cloud-netflix-hystrix-amqp/src/test/java/org/springframework/netflix/hystrix/amqp/SampleHystrixAmqpApplicaiton.java b/spring-cloud-netflix-hystrix-amqp/src/test/java/org/springframework/netflix/hystrix/amqp/SampleHystrixAmqpApplicaiton.java
deleted file mode 100644
index 9c885aaa..00000000
--- a/spring-cloud-netflix-hystrix-amqp/src/test/java/org/springframework/netflix/hystrix/amqp/SampleHystrixAmqpApplicaiton.java
+++ /dev/null
@@ -1,29 +0,0 @@
-package org.springframework.netflix.hystrix.amqp;
-
-import com.netflix.hystrix.contrib.javanica.annotation.HystrixCommand;
-import org.springframework.boot.SpringApplication;
-import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
-import org.springframework.cloud.client.circuitbreaker.EnableCircuitBreaker;
-import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-/**
- * @author Spencer Gibb
- */
-@EnableAutoConfiguration
-@EnableDiscoveryClient
-@EnableCircuitBreaker
-@RestController
-public class SampleHystrixAmqpApplicaiton {
-
- @HystrixCommand
- @RequestMapping("/")
- public String hello() {
- return "Hello World";
- }
-
- public static void main(String[] args) {
- SpringApplication.run(SampleHystrixAmqpApplicaiton.class, args);
- }
-}
diff --git a/spring-cloud-netflix-turbine-amqp/pom.xml b/spring-cloud-netflix-turbine-amqp/pom.xml
index cdcdc746..f4b47f4d 100644
--- a/spring-cloud-netflix-turbine-amqp/pom.xml
+++ b/spring-cloud-netflix-turbine-amqp/pom.xml
@@ -103,6 +103,16 @@
compile
true
+
+ org.springframework.boot
+ spring-boot-starter-web
+ test
+
+
+ org.springframework.boot
+ spring-boot-starter-test
+ test
+
diff --git a/spring-cloud-netflix-turbine-amqp/src/main/java/org/springframework/cloud/netflix/turbine/amqp/TurbineAmqpConfiguration.java b/spring-cloud-netflix-turbine-amqp/src/main/java/org/springframework/cloud/netflix/turbine/amqp/TurbineAmqpConfiguration.java
index 38514c0c..8d9f42da 100644
--- a/spring-cloud-netflix-turbine-amqp/src/main/java/org/springframework/cloud/netflix/turbine/amqp/TurbineAmqpConfiguration.java
+++ b/spring-cloud-netflix-turbine-amqp/src/main/java/org/springframework/cloud/netflix/turbine/amqp/TurbineAmqpConfiguration.java
@@ -16,6 +16,7 @@ import org.springframework.context.SmartLifecycle;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
+import org.springframework.util.SocketUtils;
import rx.Observable;
import rx.subjects.PublishSubject;
@@ -35,6 +36,7 @@ public class TurbineAmqpConfiguration implements SmartLifecycle {
@Autowired
private TurbineAmqpProperties turbine;
+ private int turbinePort;
@Bean
public PublishSubject