diff --git a/test/csit/plans/msb/rest-service/setup.sh b/test/csit/plans/msb/rest-service/setup.sh
new file mode 100644
index 0000000..18b17ff
--- /dev/null
+++ b/test/csit/plans/msb/rest-service/setup.sh
@@ -0,0 +1,55 @@
+#!/bin/bash
+#
+# Copyright 2017 ZTE, Inc. and others.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+source ${SCRIPTS}/common_functions.sh
+
+#start msb
+sudo docker run -d -p 8500:8500  --name msb_consul consul
+MSB_CONSUL_IP=`get-instance-ip.sh msb_consul`
+echo MSB_CONSUL_IP=${MSB_CONSUL_IP}
+
+sudo docker run -d  -p 10081:10081  -e CONSUL_IP=$MSB_CONSUL_IP --name msb_discovery nexus3.onap.org:10001/onap/msb/msb_discovery
+MSB_DISCOVERY_IP=`get-instance-ip.sh msb_discovery`
+echo DISCOVERY_IP=${MSB_DISCOVERY_IP}
+
+sudo docker run -d -p 80:80 -e CONSUL_IP=$MSB_CONSUL_IP -e SDCLIENT_IP=$MSB_DISCOVERY_IP -e "ROUTE_LABELS=visualRange:1" --name msb_internal_apigateway nexus3.onap.org:10001/onap/msb/msb_apigateway
+MSB_IAG_IP=`get-instance-ip.sh msb_internal_apigateway`
+echo MSB_IAG_IP=${MSB_IAG_IP}
+
+# Start rest example service
+sudo docker run -d -p 9090:9090 --name i-rest-example zhaohuabing/rest-example
+REST_EXAMPLE_IP=`get-instance-ip.sh i-rest-example`
+echo REST_EXAMPLE_IP=${REST_EXAMPLE_IP}
+
+
+# Wait for initialization(8500 Consul, 10081 Service Registration & Discovery, 80 api gateway)
+for i in {1..10}; do
+    curl -sS -m 1 ${MSB_CONSUL_IP}:8500 && curl -sS -m 1 ${MSB_DISCOVERY_IP}:10081 && curl -sS -m 1 ${MSB_IAG_IP}:80 && break
+    echo sleep $i
+    sleep $i
+done
+
+#Need some time so service info can be synced from discovery to api gateway
+sleep 60
+
+curl -X POST \
+  -H "Content-Type: application/json" \
+  -d '{"serviceName": "test", "version": "v1", "url": "/","protocol": "REST", "lb_policy":"round-robin","nodes": [ {"ip": "'${REST_EXAMPLE_IP}'","port": "9090"}]}' \
+  "http://${MSB_DISCOVERY_IP}:10081/api/microservices/v1/services"
+
+# Pass any variables required by Robot  suites in ROBOT_VARIABLES
+ROBOT_VARIABLES="-v MSB_IAG_IP:${MSB_IAG_IP} -v MSB_DISCOVERY_IP:${MSB_DISCOVERY_IP} -v REST_EXAMPLE_IP:${REST_EXAMPLE_IP}"
\ No newline at end of file
diff --git a/test/csit/plans/msb/rest-service/teardown.sh b/test/csit/plans/msb/rest-service/teardown.sh
new file mode 100644
index 0000000..d34fedb
--- /dev/null
+++ b/test/csit/plans/msb/rest-service/teardown.sh
@@ -0,0 +1,21 @@
+#!/bin/bash
+#
+# Copyright 2017 ZTE, Inc. and others.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+#kill-instance.sh msb_consul
+#kill-instance.sh msb_discovery
+#kill-instance.sh msb_internal_apigateway
+#kill-instance.sh i-rest-example
diff --git a/test/csit/plans/msb/rest-service/testplan.txt b/test/csit/plans/msb/rest-service/testplan.txt
new file mode 100644
index 0000000..54bb307
--- /dev/null
+++ b/test/csit/plans/msb/rest-service/testplan.txt
@@ -0,0 +1,4 @@
+# Test suites are relative paths under [integration.git]/test/csit/tests/.
+# Place the suites in run order.
+msb/rest-service-discovery
+msb/rest-service-api-gateway
\ No newline at end of file
diff --git a/test/csit/tests/msb/rest-service-api-gateway/__init__.robot b/test/csit/tests/msb/rest-service-api-gateway/__init__.robot
new file mode 100644
index 0000000..efd2221
--- /dev/null
+++ b/test/csit/tests/msb/rest-service-api-gateway/__init__.robot
@@ -0,0 +1,2 @@
+*** Settings ***
+Documentation    Microservices Service Bus - Messag Broker
diff --git a/test/csit/tests/msb/rest-service-api-gateway/test1.robot b/test/csit/tests/msb/rest-service-api-gateway/test1.robot
new file mode 100644
index 0000000..8a15bf2
--- /dev/null
+++ b/test/csit/tests/msb/rest-service-api-gateway/test1.robot
@@ -0,0 +1,9 @@
+*** Settings ***
+Library  Collections
+Library  requests
+
+*** Test Cases ***
+REST service Test1
+    [Documentation]            Check if test rest service can be accessed via aip gateway
+    ${result} =  get           http://${MSB_IAG_IP}/api/test/v1/people
+    Should Be Equal            ${result.status_code}       ${200}
diff --git a/test/csit/tests/msb/rest-service-discovery/__init__.robot b/test/csit/tests/msb/rest-service-discovery/__init__.robot
new file mode 100644
index 0000000..efd2221
--- /dev/null
+++ b/test/csit/tests/msb/rest-service-discovery/__init__.robot
@@ -0,0 +1,2 @@
+*** Settings ***
+Documentation    Microservices Service Bus - Messag Broker
diff --git a/test/csit/tests/msb/rest-service-discovery/test1.robot b/test/csit/tests/msb/rest-service-discovery/test1.robot
new file mode 100644
index 0000000..bb48d3f
--- /dev/null
+++ b/test/csit/tests/msb/rest-service-discovery/test1.robot
@@ -0,0 +1,14 @@
+*** Settings ***
+Library  Collections
+Library  requests
+
+*** Test Cases ***
+Messag Broker Test
+    [Documentation]            Check if the test service enpoint can be get from MSB
+    ${result} =  get           http://${MSB_DISCOVERY_IP}:10081/api/microservices/v1/services/test/version/v1
+    Should Be Equal            ${result.status_code}       ${200}
+	${json} =                  Set Variable                ${result.json()}
+    ${serviceName} =           Get From Dictionary         ${json}              serviceName
+    ${protocol} =              Get From Dictionary         ${json}              protocol
+    Should Be Equal            ${serviceName}              test
+    Should Be Equal            ${protocol}                 REST  
\ No newline at end of file
