diff --git a/dockertests/dockerSetup.sh b/dockertests/dockerSetup.sh
new file mode 100755
index 0000000..1890078
--- /dev/null
+++ b/dockertests/dockerSetup.sh
@@ -0,0 +1,92 @@
+#!/usr/bin/env bash
+
+WORK_DIR=$(pwd)
+TRANSICATOR_DIR="$GOPATH/src/github.com/apigee-labs/transicator"
+DOCKER_IP="192.168.9.1"
+if [ "$(uname)" == Darwin ];
+then
+    DOCKER_IP="localhost"
+fi
+TEST_PG_BASE=postgres://postgres:changeme@$DOCKER_IP:5432
+TEST_PG_URL=postgres://postgres:changeme@$DOCKER_IP:5432/edgex
+echo ${TEST_PG_URL}
+
+export APIGEE_SYNC_DOCKER_PG_URL=${TEST_PG_URL}
+export APIGEE_SYNC_DOCKER_IP=${DOCKER_IP}
+
+pgnum=$(docker images "apigeelabs/transicator-postgres" | wc -l)
+ssnum=$(docker images "apigeelabs/transicator-snapshot" | wc -l)
+csnum=$(docker images "apigeelabs/transicator-changeserver" | wc -l)
+
+
+if (( !(pgnum>1 && ssnum>1 && csnum>1) ))
+then
+    cd ${TRANSICATOR_DIR}
+    make
+    make docker
+    cd ${WORK_DIR}
+fi
+
+echo "Starting Transicator docker"
+pgname=apidSync_test_pg
+ssname=apidSync_test_ss
+csname=apidSync_test_cs
+
+# run PG
+docker run --name ${pgname} -p 5432:5432 -d -e POSTGRES_PASSWORD=changeme apigeelabs/transicator-postgres
+
+# Wait for PG to be up -- it takes a few seconds
+while `true`
+do
+  sleep 1
+  psql -q -c 'select * from now()' ${TEST_PG_BASE}
+  if [ $? -eq 0 ]
+  then
+    break
+  fi
+done
+
+# init pg
+psql -f ${WORK_DIR}/dockertests/create-db.sql ${TEST_PG_BASE}
+psql -f ${WORK_DIR}/dockertests/master-schema.sql ${TEST_PG_URL}
+psql -f ${WORK_DIR}/dockertests/user-setup.sql ${TEST_PG_URL}
+
+# run SS and CS
+docker run --name ${ssname} -d -p 9001:9001 apigeelabs/transicator-snapshot -p 9001 -u ${TEST_PG_URL}
+docker run --name ${csname} -d -p 9000:9000 apigeelabs/transicator-changeserver -p 9000 -u ${TEST_PG_URL} -s testslot
+
+# Wait for SS to be up
+while `true`
+do
+  sleep 1
+  response=$(curl -i http://${DOCKER_IP}:9001/snapshots?selector=foo | head -n 1)
+  if [[ $response == *303* ]]
+  then
+    break
+  fi
+done
+
+# Wait for CS to be up
+while `true`
+do
+  sleep 1
+  response=$(curl -i http://${DOCKER_IP}:9000/changes | head -n 1)
+  if [[ $response == *200* ]]
+  then
+    break
+  fi
+done
+
+apid_config=`cat <<EOF
+apigeesync_instance_name: SQLLITAPID
+apigeesync_snapshot_server_base: http://${DOCKER_IP}:9001/
+apigeesync_change_server_base: http://${DOCKER_IP}:9000/
+apigeesync_snapshot_proto: sqlite
+log_level: Debug
+apigeesync_consumer_key: 33f39JNLosF1mDOXJoCfbauchVzPrGrl
+apigeesync_consumer_secret: LAolGShAx6H3vfNF
+apigeesync_cluster_id: 4c6bb536-0d64-43ca-abae-17c08f1a7e58
+EOF
+`
+rm -f ${WORK_DIR}/dockertests/apid_config.yaml
+echo "$apid_config" >> ${WORK_DIR}/dockertests/apid_config.yaml
diff --git a/dockertests/dockerTest.sh b/dockertests/dockerTest.sh
index 39b65b8..fb5c824 100755
--- a/dockertests/dockerTest.sh
+++ b/dockertests/dockerTest.sh
@@ -1,94 +1,4 @@
 #!/usr/bin/env bash
-
-WORK_DIR=$(pwd)
-TRANSICATOR_DIR="$GOPATH/src/github.com/apigee-labs/transicator"
-DOCKER_IP="192.168.9.1"
-if [ "$(uname)" == Darwin ];
-then
-    DOCKER_IP="localhost"
-fi
-TEST_PG_BASE=postgres://postgres:changeme@$DOCKER_IP:5432
-TEST_PG_URL=postgres://postgres:changeme@$DOCKER_IP:5432/edgex
-echo ${TEST_PG_URL}
-
-export APIGEE_SYNC_DOCKER_PG_URL=${TEST_PG_URL}
-export APIGEE_SYNC_DOCKER_IP=${DOCKER_IP}
-
-pgnum=$(docker images "apigeelabs/transicator-postgres" | wc -l)
-ssnum=$(docker images "apigeelabs/transicator-snapshot" | wc -l)
-csnum=$(docker images "apigeelabs/transicator-changeserver" | wc -l)
-
-
-if (( !(pgnum>1 && ssnum>1 && csnum>1) ))
-then
-    cd ${TRANSICATOR_DIR}
-    make
-    make docker
-    cd ${WORK_DIR}
-fi
-
-echo "Starting Transicator docker"
-pgname=apidSync_test_pg
-ssname=apidSync_test_ss
-csname=apidSync_test_cs
-
-# run PG
-docker run --name ${pgname} -p 5432:5432 -d -e POSTGRES_PASSWORD=changeme apigeelabs/transicator-postgres
-
-# Wait for PG to be up -- it takes a few seconds
-while `true`
-do
-  sleep 1
-  psql -q -c 'select * from now()' ${TEST_PG_BASE}
-  if [ $? -eq 0 ]
-  then
-    break
-  fi
-done
-
-# init pg
-psql -f ${WORK_DIR}/dockertests/create-db.sql ${TEST_PG_BASE}
-psql -f ${WORK_DIR}/dockertests/master-schema.sql ${TEST_PG_URL}
-psql -f ${WORK_DIR}/dockertests/user-setup.sql ${TEST_PG_URL}
-
-# run SS and CS
-docker run --name ${ssname} -d -p 9001:9001 apigeelabs/transicator-snapshot -p 9001 -u ${TEST_PG_URL}
-docker run --name ${csname} -d -p 9000:9000 apigeelabs/transicator-changeserver -p 9000 -u ${TEST_PG_URL} -s testslot
-
-# Wait for SS to be up
-while `true`
-do
-  sleep 1
-  response=$(curl -i http://${DOCKER_IP}:9001/snapshots?selector=foo | head -n 1)
-  if [[ $response == *303* ]]
-  then
-    break
-  fi
-done
-
-# Wait for CS to be up
-while `true`
-do
-  sleep 1
-  response=$(curl -i http://${DOCKER_IP}:9000/changes | head -n 1)
-  if [[ $response == *200* ]]
-  then
-    break
-  fi
-done
-
-apid_config=`cat <<EOF
-apigeesync_instance_name: SQLLITAPID
-apigeesync_snapshot_server_base: http://${DOCKER_IP}:9001/
-apigeesync_change_server_base: http://${DOCKER_IP}:9000/
-apigeesync_snapshot_proto: sqlite
-log_level: Debug
-apigeesync_consumer_key: 33f39JNLosF1mDOXJoCfbauchVzPrGrl
-apigeesync_consumer_secret: LAolGShAx6H3vfNF
-apigeesync_cluster_id: 4c6bb536-0d64-43ca-abae-17c08f1a7e58
-EOF
-`
-rm -f ${WORK_DIR}/dockertests/apid_config.yaml
-echo "$apid_config" >> ${WORK_DIR}/dockertests/apid_config.yaml
-
-#go test dockertests/*.go
\ No newline at end of file
+source ./dockertests/dockerSetup.sh
+go test ./dockertests/*.go
+./dockertests/dockerCleanup.sh
\ No newline at end of file
