Adding test setup script to run the tests inside a test container.
Adding documentation for running the tests
diff --git a/src/test/setup/cord-test.sh b/src/test/setup/cord-test.sh
new file mode 100755
index 0000000..bbaa286
--- /dev/null
+++ b/src/test/setup/cord-test.sh
@@ -0,0 +1,151 @@
+#!/usr/bin/env bash
+
+function show_help {
+    echo "Usage: ${0#*/} -h | this help -n <onos_ip> -r <radius_ip> -o <onos cnt image> -a <radius cnt image> -t <test type> -c | cleanup test containers -C <cleanup container list> -k | kill the test container -b <test cnt image> | build test container docker image"
+    exit 1
+}
+
+function cnt_ipaddr {
+    local image="${1}"
+    local cnt=`docker ps |grep "${image}" |awk '{print $1}'`
+    local ipaddr
+    ipaddr=`docker inspect -f '{{.NetworkSettings.IPAddress}}' $cnt`
+    echo $ipaddr
+}
+
+test_type=dhcp
+onos_cnt_image=onos:igmp-test
+radius_cnt_image=radius-server:dev
+onos_ip=
+radius_ip=
+OPTIND=1
+nose_cnt_image="onos:nosetest"
+cleanup=0
+kill_test_cnt=0
+build_cnt_image=
+cleanup_cnt_list=
+
+while getopts "h?n:r:o:a:t:cC:kb:" opt; do 
+    case "$opt" in
+        h|\?)
+            show_help
+            exit 1
+            ;;
+        t)
+            test_type=$OPTARG
+            ;;
+        n)
+            onos_ip=$OPTARG
+            ;;
+        r)
+            radius_ip=$OPTARG
+            ;;
+        o)
+            onos_cnt_image=$OPTARG
+            ;;
+        a)
+            radius_cnt_image=$OPTARG
+            ;;
+        c)
+            cleanup=1
+            ;;
+        C)
+            cleanup=1
+            cleanup_cnt_list=$OPTARG
+            ;;
+        k)
+            kill_test_cnt=1
+            ;;
+        b)
+            build_cnt_image=$OPTARG
+            ;;
+    esac
+done
+
+shift $(($OPTIND-1))
+
+if [ $# -gt 0 ]; then
+    echo "Invalid args"
+    show_help
+fi
+
+if [ $cleanup -eq 1 ]; then
+    if [ x"$cleanup_cnt_list" != "x" ]; then
+        IFS='-' read -r -a cleanup_list <<<"${cleanup_cnt_list}"
+        for container in "${cleanup_list[@]}"; do
+            cnt_id=`docker ps | grep "${container}" | awk '{print $1}'`
+            echo "Killing container $cnt_id"
+            docker kill $cnt_id
+        done
+        exit 0
+    fi
+    for container in `docker ps | grep "${nose_cnt_image}" | awk '{print $1}'`; do
+        echo "Killing test container $container"
+        docker kill $container
+    done
+    exit 0
+fi
+
+if [ x"$onos_ip" = "x" ]; then
+    onos_ip=$(cnt_ipaddr $onos_cnt_image)
+fi
+
+if [ x"$radius_ip" = "x" ]; then
+    radius_ip=$(cnt_ipaddr $radius_cnt_image)
+fi
+
+echo "Onos IP $onos_ip, Radius IP $radius_ip, Test type $test_type"
+sed "s,%%CONTROLLER%%,$onos_ip,g" of-bridge-template.sh > $HOME/nose_exp/of-bridge.sh
+
+if [ x"$build_cnt_image" != "x" ]; then
+    echo "Building test container docker image $build_cnt_image"
+    (cd test_docker && docker build -t $build_cnt_image . )
+    sleep 2
+    echo "Done building docker image $build_cnt_image"
+    nose_cnt_image=$build_cnt_image
+fi
+echo "Starting test container $nose_cnt_image"
+
+test_cnt=`docker run -itd --privileged -v $HOME/nose_exp:/root/test -v /lib/modules:/lib/modules -e ONOS_CONTROLLER_IP=$onos_ip -e ONOS_AAA_IP=$radius_ip $nose_cnt_image /bin/bash`
+echo "Setting up test container $test_cnt"
+docker exec $test_cnt pip install monotonic
+echo "Starting up the OVS switch on the test container $test_cnt"
+docker exec $test_cnt /root/test/of-bridge.sh br0
+status=0
+while [ $status -ne 0 ]; do
+    echo "Waiting for the switch to get connected to controller"
+    docker exec $test_cnt ovs-ofctl dump-flows br0  | grep "type=0x8942"
+    status=$?
+    sleep 1
+done
+sleep 3
+
+IFS='-' read -r -a tests <<<"${test_type}"
+for t in "${tests[@]}"; do
+    test_method="${t#*:}"
+    test="${t%%:*}"
+    case "$test" in
+        tls)
+            test_file="$test"AuthTest.py
+            ;;
+        *)
+            test_file="$test"Test.py
+            ;;
+    esac
+    if [ "$test_method" != "$t" ]; then
+        test_case="$test_file":"${test_method}"
+    else
+        test_case="$test_file"
+    fi
+    echo "Running test $test, test case $test_case"
+    docker exec $test_cnt nosetests -v /root/test/git/cord-tester/src/test/$test/"${test_case}"
+    echo "Test $t exited with status $?"
+done
+
+echo "Done running tests."
+
+if [ $kill_test_cnt -eq 1 ]; then
+    echo "Killing test container $test_cnt"
+    docker kill $test_cnt
+fi
+