summaryrefslogtreecommitdiffstats
path: root/test/csit
diff options
context:
space:
mode:
authorliangke <lokyse@163.com>2017-09-26 21:15:04 +0800
committerliangke <lokyse@163.com>2017-09-27 14:01:41 +0800
commit8bdde5264235b698c7fe3f7bf68660efea6c41bb (patch)
tree02d29c1d7e8211761e84b74498428cc10e75f9f1 /test/csit
parent91a31997cf6e691f141bef5860dfb126c64b3aa7 (diff)
Add csit for multivim-vmware
Change-Id: I3ee2915a672580ffaf8e547fb2b1c7134d0cf597 Issue-Id: MULTICLOUD-49 Signed-off-by: liangke <lokyse@163.com>
Diffstat (limited to 'test/csit')
-rwxr-xr-xtest/csit/plans/multicloud-vmware/functionality1/setup.sh33
-rwxr-xr-xtest/csit/plans/multicloud-vmware/functionality1/teardown.sh19
-rw-r--r--test/csit/plans/multicloud-vmware/functionality1/testplan.txt7
-rw-r--r--test/csit/tests/multicloud-vmware/provision/jsoninput/auth_info.json10
-rw-r--r--test/csit/tests/multicloud-vmware/provision/sanity_test_image.robot78
-rw-r--r--test/csit/tests/multicloud-vmware/provision/sanity_test_neutron.robot62
-rw-r--r--test/csit/tests/multicloud-vmware/provision/sanity_test_tenant.robot59
-rw-r--r--test/csit/tests/multicloud-vmware/provision/sanity_test_vio.robot22
8 files changed, 290 insertions, 0 deletions
diff --git a/test/csit/plans/multicloud-vmware/functionality1/setup.sh b/test/csit/plans/multicloud-vmware/functionality1/setup.sh
new file mode 100755
index 000000000..d71d5c423
--- /dev/null
+++ b/test/csit/plans/multicloud-vmware/functionality1/setup.sh
@@ -0,0 +1,33 @@
+#!/bin/bash
+#
+# Copyright 2016-2017 Huawei Technologies Co., Ltd.
+#
+# 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.
+#
+# Place the scripts in run order:
+# Start all process required for executing test case
+
+source ${SCRIPTS}/common_functions.sh
+
+# start multicloud-vio
+docker run -d --name multicloud-vio nexus3.onap.org:10001/onap/multicloud/vio
+VIO_IP=`get-instance-ip.sh multicloud-vio`
+for i in {1..50}; do
+ curl -sS ${VIO_IP}:9004 && break
+ echo sleep $i
+ sleep $i
+done
+
+echo SCRIPTS
+# Pass any variables required by Robot test suites in ROBOT_VARIABLES
+ROBOT_VARIABLES="-v VIO_IP:${VIO_IP} -v SCRIPTS:${SCRIPTS}"
diff --git a/test/csit/plans/multicloud-vmware/functionality1/teardown.sh b/test/csit/plans/multicloud-vmware/functionality1/teardown.sh
new file mode 100755
index 000000000..546e01261
--- /dev/null
+++ b/test/csit/plans/multicloud-vmware/functionality1/teardown.sh
@@ -0,0 +1,19 @@
+#!/bin/bash
+#
+# Copyright 2016-2017 Huawei Technologies Co., Ltd.
+#
+# 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.
+#
+
+# This script is sourced by run-csit.sh after Robot test completion.
+kill-instance.sh multicloud-vio
diff --git a/test/csit/plans/multicloud-vmware/functionality1/testplan.txt b/test/csit/plans/multicloud-vmware/functionality1/testplan.txt
new file mode 100644
index 000000000..dae4b2e69
--- /dev/null
+++ b/test/csit/plans/multicloud-vmware/functionality1/testplan.txt
@@ -0,0 +1,7 @@
+# Test suites are relative paths under [integration.git]/test/csit/tests/.
+# Place the suites in run order.
+multicloud-vmware/provision/sanity_test_vio.robot
+multicloud-vmware/provision/sanity_test_tenant.robot
+multicloud-vmware/provision/sanity_test_image.robot
+multicloud-vmware/provision/sanity_test_neutron.robot
+
diff --git a/test/csit/tests/multicloud-vmware/provision/jsoninput/auth_info.json b/test/csit/tests/multicloud-vmware/provision/jsoninput/auth_info.json
new file mode 100644
index 000000000..6d42f84d4
--- /dev/null
+++ b/test/csit/tests/multicloud-vmware/provision/jsoninput/auth_info.json
@@ -0,0 +1,10 @@
+{
+ "auth":
+ {
+ "scope": {"project": {"id": "a71c87345ad14533aa6496fca69d4840"}},
+ "identity":
+ {
+ "password": {"user": {"domain": {"name": "Default"}, "password": "vmware", "name": "admin"}}, "methods": ["password"]
+ }
+ }
+}
diff --git a/test/csit/tests/multicloud-vmware/provision/sanity_test_image.robot b/test/csit/tests/multicloud-vmware/provision/sanity_test_image.robot
new file mode 100644
index 000000000..0a6f2f5e8
--- /dev/null
+++ b/test/csit/tests/multicloud-vmware/provision/sanity_test_image.robot
@@ -0,0 +1,78 @@
+*** settings ***
+Resource ../../common.robot
+Library Collections
+Library RequestsLibrary
+Library OperatingSystem
+Library json
+Library HttpLibrary.HTTP
+
+
+*** Variables ***
+@{return_ok_list}= 200 201 202
+@{delete_ok_list}= 200 204
+${get_token_url} /api/multicloud-vio/v0/vmware_fake/identity/v3/auth/tokens
+${get_image_url} /api/multicloud-vio/v0/vmware_fake/glance/v2/images
+${get_image_schema_url} /api/multicloud-vio/v0/vmware_fake/glance/v2/schemas/image
+
+
+#json files
+${auth_info_json} ${SCRIPTS}/../tests/multicloud-vmware/provision/jsoninput/auth_info.json
+
+#global vars
+${TOKEN}
+${IMAGEID}
+
+*** Test Cases ***
+
+GetAuthToken
+ [Documentation] Sanity test - Get Auth Token
+ ${json_value}= json_from_file ${auth_info_json}
+ ${json_string}= string_from_json ${json_value}
+ ${headers} Create Dictionary Content-Type=application/json Accept=application/json
+ Create Session web_session http://${VIO_IP}:9004 headers=${headers}
+ ${resp}= POST Request web_session ${get_token_url} ${json_string}
+ ${responese_code}= Convert To String ${resp.status_code}
+ List Should Contain Value ${return_ok_list} ${responese_code}
+ ${response_json} json.loads ${resp.content}
+ ${TOKEN}= Convert To String ${response_json['token']['value']}
+ ${TENANTID}= Convert To String ${response_json['token']['project']['id']}
+ Set Global Variable ${TOKEN}
+
+
+
+
+
+TestCaseShoeImageSchema
+ [Documentation] Sanity test - Show Image Schema
+ ${headers} Create Dictionary Content-Type=application/json Accept=application/json X-Auth-Token=${TOKEN}
+ Create Session web_session http://${VIO_IP}:9004 headers=${headers}
+ ${resp}= Get Request web_session ${get_image_schema_url}
+ ${responese_code}= Convert To String ${resp.status_code}
+ List Should Contain Value ${return_ok_list} ${responese_code}
+
+
+
+
+TestCaseListImages
+ [Documentation] Sanity test - List Images
+ ${headers} Create Dictionary Content-Type=application/json Accept=application/json X-Auth-Token=${TOKEN}
+ Create Session web_session http://${VIO_IP}:9004 headers=${headers}
+ ${resp}= Get Request web_session ${get_image_url}
+ ${responese_code}= Convert To String ${resp.status_code}
+ List Should Contain Value ${return_ok_list} ${responese_code}
+ ${response_json} json.loads ${resp.content}
+ ${IMAGEID}= Convert To String ${response_json['images'][0]['id']}
+ Set Global Variable ${IMAGEID}
+
+
+
+
+TestCaseShowImage
+ [Documentation] Sanity test - Show Image
+ ${headers} Create Dictionary Content-Type=application/json Accept=application/json X-Auth-Token=${TOKEN}
+ Create Session web_session http://${VIO_IP}:9004 headers=${headers}
+ ${resp}= Get Request web_session ${get_image_url}/${IMAGEID}
+ ${responese_code}= Convert To String ${resp.status_code}
+ List Should Contain Value ${return_ok_list} ${responese_code}
+ ${response_json} json.loads ${resp.content}
+ Should Be Equal ${response_json['status']} active
diff --git a/test/csit/tests/multicloud-vmware/provision/sanity_test_neutron.robot b/test/csit/tests/multicloud-vmware/provision/sanity_test_neutron.robot
new file mode 100644
index 000000000..d38b9983b
--- /dev/null
+++ b/test/csit/tests/multicloud-vmware/provision/sanity_test_neutron.robot
@@ -0,0 +1,62 @@
+*** settings ***
+Resource ../../common.robot
+Library Collections
+Library RequestsLibrary
+Library OperatingSystem
+Library json
+Library HttpLibrary.HTTP
+
+
+*** Variables ***
+@{return_ok_list}= 200 201 202
+@{delete_ok_list}= 200 204
+${get_token_url} /api/multicloud-vio/v0/vmware_fake/identity/v3/auth/tokens
+${get_networks_url} /api/multicloud-vio/v0/vmware_fake/neutron/networks
+
+#json files
+${auth_info_json} ${SCRIPTS}/../tests/multicloud-vmware/provision/jsoninput/auth_info.json
+
+#global vars
+${TOKEN}
+${NETWORKID}
+
+*** Test Cases ***
+
+GetAuthToken
+ [Documentation] Sanity test - Get Auth Token
+ ${json_value}= json_from_file ${auth_info_json}
+ ${json_string}= string_from_json ${json_value}
+ ${headers} Create Dictionary Content-Type=application/json Accept=application/json
+ Create Session web_session http://${VIO_IP}:9004 headers=${headers}
+ ${resp}= POST Request web_session ${get_token_url} ${json_string}
+ ${responese_code}= Convert To String ${resp.status_code}
+ List Should Contain Value ${return_ok_list} ${responese_code}
+ ${response_json} json.loads ${resp.content}
+ ${TOKEN}= Convert To String ${response_json['token']['value']}
+ ${TENANTID}= Convert To String ${response_json['token']['project']['id']}
+ Set Global Variable ${TOKEN}
+
+
+TestCaseListNetworks
+ [Documentation] Sanity test - List Networks
+ ${headers} Create Dictionary Content-Type=application/json Accept=application/json X-Auth-Token=${TOKEN}
+ Create Session web_session http://${VIO_IP}:9004 headers=${headers}
+ ${resp}= Get Request web_session ${get_networks_url}
+ ${responese_code}= Convert To String ${resp.status_code}
+ List Should Contain Value ${return_ok_list} ${responese_code}
+ ${response_json} json.loads ${resp.content}
+ ${NETWORKID}= Convert To String ${response_json['networks'][0]['id']}
+ Set Global Variable ${NETWORKID}
+
+
+
+
+TestCaseShowNetwork
+ [Documentation] Sanity test - Show Network
+ ${headers} Create Dictionary Content-Type=application/json Accept=application/json X-Auth-Token=${TOKEN}
+ Create Session web_session http://${VIO_IP}:9004 headers=${headers}
+ ${resp}= Get Request web_session ${get_networks_url}/${NETWORKID}
+ ${responese_code}= Convert To String ${resp.status_code}
+ List Should Contain Value ${return_ok_list} ${responese_code}
+ ${response_json} json.loads ${resp.content}
+ Should Be Equal ${response_json['network']['status']} ACTIVE
diff --git a/test/csit/tests/multicloud-vmware/provision/sanity_test_tenant.robot b/test/csit/tests/multicloud-vmware/provision/sanity_test_tenant.robot
new file mode 100644
index 000000000..86d569ee9
--- /dev/null
+++ b/test/csit/tests/multicloud-vmware/provision/sanity_test_tenant.robot
@@ -0,0 +1,59 @@
+*** settings ***
+Resource ../../common.robot
+Library Collections
+Library RequestsLibrary
+Library OperatingSystem
+Library json
+Library HttpLibrary.HTTP
+
+
+*** Variables ***
+@{return_ok_list}= 200 201 202
+@{delete_ok_list}= 200 204
+${get_token_url} /api/multicloud-vio/v0/vmware_fake/identity/v3/auth/tokens
+${get_project_url} /api/multicloud-vio/v0/vmware_fake/identity/projects
+
+#json files
+${auth_info_json} ${SCRIPTS}/../tests/multicloud-vmware/provision/jsoninput/auth_info.json
+
+#global vars
+${TOKEN}
+${TENANTID}
+
+*** Test Cases ***
+
+GetAuthToken
+ [Documentation] Sanity test - Get Auth Token
+ ${json_value}= json_from_file ${auth_info_json}
+ ${json_string}= string_from_json ${json_value}
+ ${headers} Create Dictionary Content-Type=application/json Accept=application/json
+ Create Session web_session http://${VIO_IP}:9004 headers=${headers}
+ ${resp}= POST Request web_session ${get_token_url} ${json_string}
+ ${responese_code}= Convert To String ${resp.status_code}
+ List Should Contain Value ${return_ok_list} ${responese_code}
+ ${response_json} json.loads ${resp.content}
+ ${TOKEN}= Convert To String ${response_json['token']['value']}
+ ${TENANTID}= Convert To String ${response_json['token']['project']['id']}
+ Set Global Variable ${TOKEN}
+ Set Global Variable ${TENANTID}
+
+
+TestCaseListTenants
+ [Documentation] Sanity test - List Tenants
+ ${headers} Create Dictionary Content-Type=application/json Accept=application/json X-Auth-Token=${TOKEN}
+ Create Session web_session http://${VIO_IP}:9004 headers=${headers}
+ ${resp}= Get Request web_session ${get_project_url}
+ ${responese_code}= Convert To String ${resp.status_code}
+ List Should Contain Value ${return_ok_list} ${responese_code}
+ ${response_json} json.loads ${resp.content}
+
+
+
+TestCaseShowTenants
+ [Documentation] Sanity test - Show Tenant
+ ${headers} Create Dictionary Content-Type=application/json Accept=application/json X-Auth-Token=${TOKEN}
+ Create Session web_session http://${VIO_IP}:9004 headers=${headers}
+ ${resp}= Get Request web_session ${get_project_url}/${TENANTID}
+ ${responese_code}= Convert To String ${resp.status_code}
+ List Should Contain Value ${return_ok_list} ${responese_code}
+ ${response_json} json.loads ${resp.content}
diff --git a/test/csit/tests/multicloud-vmware/provision/sanity_test_vio.robot b/test/csit/tests/multicloud-vmware/provision/sanity_test_vio.robot
new file mode 100644
index 000000000..d353f1da0
--- /dev/null
+++ b/test/csit/tests/multicloud-vmware/provision/sanity_test_vio.robot
@@ -0,0 +1,22 @@
+*** settings ***
+Library Collections
+Library RequestsLibrary
+Library OperatingSystem
+Library json
+
+*** Variables ***
+@{return_ok_list}= 200 201 202
+${queryswagger_vio_url} /api/multicloud-vio/v0/swagger.json
+
+
+*** Test Cases ***
+VioSwaggerTest
+ [Documentation] query swagger info rest test
+ ${headers} Create Dictionary Content-Type=application/json Accept=application/json
+ Create Session web_session http://${VIO_IP}:9004 headers=${headers}
+ ${resp}= Get Request web_session ${queryswagger_vio_url}
+ ${responese_code}= Convert To String ${resp.status_code}
+ List Should Contain Value ${return_ok_list} ${responese_code}
+ ${response_json} json.loads ${resp.content}
+ ${swagger_version}= Convert To String ${response_json['swagger']}
+ Should Be Equal ${swagger_version} 2.0