diff options
13 files changed, 144 insertions, 42 deletions
diff --git a/plans/dcaegen2-collectors-restconf/testsuites/setup.sh b/plans/dcaegen2-collectors-restconf/testsuites/setup.sh new file mode 100755 index 00000000..c1b4f342 --- /dev/null +++ b/plans/dcaegen2-collectors-restconf/testsuites/setup.sh @@ -0,0 +1,21 @@ +#!/bin/bash + +#get current host IP addres +HOST_IP=$(ip route get 8.8.8.8 | awk '/8.8.8.8/ {print $NF}') + +RCC_IMAGE=nexus3.onap.org:10001/onap/org.onap.dcaegen2.collectors.restconfcollector:latest +echo RCC_IMAGE=${RCC_IMAGE} + +# Start DCAE Restconf Collector +docker run -d -p 8080:8080/tcp -p 8443:8443/tcp -P --name rcc -e DMAAPHOST=${HOST_IP} ${RCC_IMAGE} + +RCC_IP=`get-instance-ip.sh rcc` +export RCC_IP=${RCC_IP} +export HOST_IP=${HOST_IP} + +export ROBOT_VARIABLES="--pythonpath ${WORKSPACE}/tests/dcaegen2-collectors-restconf/testcases/resources" + +pip install jsonschema uuid +# Wait container ready +sleep 5 + diff --git a/plans/dcaegen2-collectors-restconf/testsuites/teardown.sh b/plans/dcaegen2-collectors-restconf/testsuites/teardown.sh new file mode 100755 index 00000000..1816f16b --- /dev/null +++ b/plans/dcaegen2-collectors-restconf/testsuites/teardown.sh @@ -0,0 +1,3 @@ +#!/bin/bash + +kill-instance.sh rcc
\ No newline at end of file diff --git a/plans/dcaegen2-collectors-restconf/testsuites/testplan.txt b/plans/dcaegen2-collectors-restconf/testsuites/testplan.txt new file mode 100755 index 00000000..66a70718 --- /dev/null +++ b/plans/dcaegen2-collectors-restconf/testsuites/testplan.txt @@ -0,0 +1,3 @@ +# Test suites are relative paths under [integration/csit.git]/tests/. +# Place the suites in run order. +dcaegen2-collectors-restconf/testcases diff --git a/plans/optf-cmso/cmso/setup.sh b/plans/optf-cmso/cmso/setup.sh index c30d8302..c57af135 100644 --- a/plans/optf-cmso/cmso/setup.sh +++ b/plans/optf-cmso/cmso/setup.sh @@ -22,8 +22,3 @@ # Place the scripts in run order: source ${WORKSPACE}/scripts/optf-cmso/cmso/clone_cmso_and_change_dockercompose.sh - -source ${WORKSPACE}/scripts/optf-cmso/cmso/start_cmso_containers.sh - -# Pass any variables required by Robot test suites in ROBOT_VARIABLES -#ROBOT_VARIABLES="-v TEST:${TEST}" diff --git a/scripts/optf-cmso/cmso/clone_cmso_and_change_dockercompose.sh b/scripts/optf-cmso/cmso/clone_cmso_and_change_dockercompose.sh index 03fca804..3b2de744 100644 --- a/scripts/optf-cmso/cmso/clone_cmso_and_change_dockercompose.sh +++ b/scripts/optf-cmso/cmso/clone_cmso_and_change_dockercompose.sh @@ -25,14 +25,34 @@ echo "This is ${WORKSPACE}/scripts/cmso/clone_cmso_and_change_dockercompose.sh" # Clone cmso repo to get extra folder that has all needed to run docker with docker-compose to start DB and cmso-service and cmso-dbinit -mkdir -p $WORKSPACE/archives/cmso-clone -cd $WORKSPACE/archives/cmso-clone +mkdir -p /tmp/$WORKSPACE/archives/cmso-clone +cd /tmp/$WORKSPACE/archives/cmso-clone git clone --depth 1 https://gerrit.onap.org/r/optf/cmso -b master -cd cmso/cmso-service/extra/docker +cd cmso/cmso-robot/docker/cmso-service -# Pull the cmso docker image from nexus instead of local image by default in the docker-compose.yml -sed -i '/image: onap\/optf-cmso-service/c\ image: nexus3.onap.org:10001\/onap\/optf-cmso-service' docker-compose.yml +sed -i '/image: onap\/optf-cmso-service/c\ image: nexus3.onap.org:10001\/onap\/optf-cmso-service:latest' docker-compose.yml +sed -i '/image: onap\/optf-cmso-dbinit/c\ image: nexus3.onap.org:10001\/onap\/optf-cmso-dbinit:latest' docker-compose.yml +sed -i '/image: onap\/optf-cmso-topology/c\ image: nexus3.onap.org:10001\/onap\/optf-cmso-topology:latest' docker-compose.yml +sed -i '/image: onap\/optf-cmso-ticketmgt/c\ image: nexus3.onap.org:10001\/onap\/optf-cmso-ticketmgt:latest' docker-compose.yml +sed -i '/image: onap\/optf-cmso-optimizer/c\ image: nexus3.onap.org:10001\/onap\/optf-cmso-optimizer:latest' docker-compose.yml +sed -i '/image: onap\/optf-cmso-robot/c\ image: nexus3.onap.org:10001\/onap\/optf-cmso-robot:latest' docker-compose.yml -sed -i '/image: onap\/optf-cmso-dbinit/c\ image: nexus3.onap.org:10001\/onap\/optf-cmso-dbinit' docker-compose.yml +pip uninstall docker-py; pip uninstall docker; pip install docker +#!/bin/bash +docker-compose up >up.txt 2>&1 & + + +### Wait for docker compose to complete +sleep 300 +echo =======================up.txt +cat up.txt +echo ======================= + +### Wait for robot to finish +docker exec cmsoservice_cmso-robot_1 ls +while [ $? -ne 1 ]; do + sleep 120 + docker exec cmsoservice_cmso-robot_1 ls +done diff --git a/scripts/optf-cmso/cmso/kill_and_remove_cmso_containers.sh b/scripts/optf-cmso/cmso/kill_and_remove_cmso_containers.sh index 681099ca..5d8c0597 100644 --- a/scripts/optf-cmso/cmso/kill_and_remove_cmso_containers.sh +++ b/scripts/optf-cmso/cmso/kill_and_remove_cmso_containers.sh @@ -19,13 +19,14 @@ # echo "This is ${WORKSPACE}/scripts/optf-cmso/cmso/kill_and_remove_cmso_containers.sh" +cd /tmp/$WORKSPACE/archives/cmso-clone +cd cmso/cmso-robot/docker/cmso-service +docker-compose down -kill-instance.sh cmso-service -kill-instance.sh cmso-mariadb -kill-instance.sh cmso-db-init +cp -f ./cmso-robot/logs/output.xml $WORKSPACE/archives +cp -f ./cmso-robot/logs/log.html $WORKSPACE/archives +cp -f ./cmso-robot/logs/report.html $WORKSPACE/archives -#delete cmso-clone folder - -rm -rf ${WORKSPACE}archives/cmso-clone +##rm -rf ${WORKSPACE}/archives/cmso-clone diff --git a/tests/dcaegen2-collectors-restconf/testcases/__init__.robot b/tests/dcaegen2-collectors-restconf/testcases/__init__.robot new file mode 100644 index 00000000..e69de29b --- /dev/null +++ b/tests/dcaegen2-collectors-restconf/testcases/__init__.robot diff --git a/tests/dcaegen2-collectors-restconf/testcases/dcae_rcc.robot b/tests/dcaegen2-collectors-restconf/testcases/dcae_rcc.robot new file mode 100644 index 00000000..74171472 --- /dev/null +++ b/tests/dcaegen2-collectors-restconf/testcases/dcae_rcc.robot @@ -0,0 +1,23 @@ +*** Settings *** +Documentation Testing DCAE Restconf Listener with various event feeds from VoLTE, vDNS, vFW and cCPE use scenarios +Library RequestsLibrary +Library OperatingSystem +Library Collections +Library DcaeLibrary +Resource ./resources/dcae_keywords.robot +Resource ../../common.robot +Test Setup Init RCC +Suite Setup Run keywords Create rcc sessions Create rcc header +Suite Teardown teardown rcc + +*** Variables *** +${RCC_URL_HTTPS} https://%{RCC_IP}:8443 +${RCC_URL} http://%{RCC_IP}:8080 + +*** Test Cases *** +Restconf Collector Health Check + [Tags] DCAE-RCC-R1 + [Documentation] Restconf Collector Health Check + ${headers}= Create Dictionary Accept=*/* + ${resp}= Get Request ${suite_dcae_rcc_url_session} /healthcheck headers=${headers} + Should Be Equal As Strings ${resp.status_code} 200 diff --git a/tests/dcaegen2-collectors-restconf/testcases/resources/DcaeLibrary.py b/tests/dcaegen2-collectors-restconf/testcases/resources/DcaeLibrary.py new file mode 100644 index 00000000..d4848746 --- /dev/null +++ b/tests/dcaegen2-collectors-restconf/testcases/resources/DcaeLibrary.py @@ -0,0 +1,20 @@ +from robot.api import logger +import time + +class DcaeLibrary(object): + + def __init__(self): + pass + + @staticmethod + def init_rcc(): + logger.console("RestConf collector init and cleanup are done") + return "true" + + @staticmethod + def teardown_rcc(): + logger.console("RestConf collector teardown done") + return "true" + +if __name__ == '__main__': + time.sleep(100000) diff --git a/tests/dcaegen2-collectors-restconf/testcases/resources/dcae_keywords.robot b/tests/dcaegen2-collectors-restconf/testcases/resources/dcae_keywords.robot new file mode 100644 index 00000000..172210f6 --- /dev/null +++ b/tests/dcaegen2-collectors-restconf/testcases/resources/dcae_keywords.robot @@ -0,0 +1,23 @@ +*** Settings *** +Documentation The main interface for interacting with DCAE. It handles low level stuff like managing the http request library and DCAE required fields +Library RequestsLibrary +Library DcaeLibrary +Library OperatingSystem +Library Collections +Resource ../resources/dcae_properties.robot + +*** Variables *** +${DCAE_HEALTH_CHECK_BODY} %{WORKSPACE}/tests/dcae/testcases/assets/json_events/dcae_healthcheck.json + +*** Keywords *** +Create rcc sessions + [Documentation] Create all required sessions + Create Session dcae_rcc_url ${RCC_URL} + Set Suite Variable ${suite_dcae_rcc_url_session} dcae_rcc_url + ${auth}= Create List ${RCC_HTTPS_USER} ${RCC_HTTPS_PD} + Create Session dcae_rcc_url_https ${RCC_URL_HTTPS} auth=${auth} disable_warnings=1 + Set Suite Variable ${suite_dcae_rcc_url_https_session} dcae_rcc_url_https + +Create rcc header + ${headers}= Create Dictionary Content-Type=application/json + Set Suite Variable ${suite_headers} ${headers} diff --git a/tests/dcaegen2-collectors-restconf/testcases/resources/dcae_properties.robot b/tests/dcaegen2-collectors-restconf/testcases/resources/dcae_properties.robot new file mode 100644 index 00000000..3ba7690c --- /dev/null +++ b/tests/dcaegen2-collectors-restconf/testcases/resources/dcae_properties.robot @@ -0,0 +1,14 @@ +*** Settings *** +Documentation store all properties that can change or are used in multiple places here +... format is all caps with underscores between words and prepended with GLOBAL +... make sure you prepend them with GLOBAL so that other files can easily see it is from this file. + +*** Variables *** +${GLOBAL_APPLICATION_ID} robot-dcaegen2 +${GLOBAL_DCAE_CONSUL_URL} http://135.205.228.129:8500 +${GLOBAL_DCAE_CONSUL_URL1} http://135.205.228.170:8500 +${GLOBAL_DCAE_VES_URL} http://localhost:8443/eventlistener/v5 +${GLOBAL_DCAE_USERNAME} console +${GLOBAL_DCAE_PASSWORD} ZjJkYjllMjljMTI2M2Iz +${RCC_HTTPS_USER} sample1 +${RCC_HTTPS_PD} sample1 diff --git a/tests/dcaegen2-collectors-restconf/testcases/resources/index.htm b/tests/dcaegen2-collectors-restconf/testcases/resources/index.htm new file mode 100644 index 00000000..5ab2f8a4 --- /dev/null +++ b/tests/dcaegen2-collectors-restconf/testcases/resources/index.htm @@ -0,0 +1 @@ +Hello
\ No newline at end of file diff --git a/tests/optf-cmso/cmso/testsuites/ChangeManagementImmediate.robot b/tests/optf-cmso/cmso/testsuites/ChangeManagementImmediate.robot index ee6f8b10..6990cf46 100644 --- a/tests/optf-cmso/cmso/testsuites/ChangeManagementImmediate.robot +++ b/tests/optf-cmso/cmso/testsuites/ChangeManagementImmediate.robot @@ -1,28 +1,6 @@ *** Settings *** -Documentation Creates VID VNF Instance - -#Library StringTemplater -#Library UUID -Library ../attlibs/UID.py -Library ../attlibs/StringTemplater.py -Resource ../resources/change_management_ete.robot - -# Test Setup -Test Template Change Management Immediate Template -# Test Teardown +Documentation Placeholder for running CMSO IT *** Test Cases *** -One Vnf Immediate Replace OneVnfImmediate.json.template Replace - [Tags] ete immediate - -One Vnf Immediate Update Config OneVnfImmediate.json.template VNF Config Update - [Tags] ete immediate - -One Vnf Immediate Update In Place OneVnfImmediate.json.template VNF Update Software In Place - [Tags] ete immediate - -One Vnf Immediate Update OneVnfImmediate.json.template Update - [Tags] ete immediate - -Multiple Vnf Immediate MultipleVnfImmediate.json.template Replace - [Tags] ete immediate +CMSO Robot Test + Log CMSO IT tests run via cmso-robot docker container.
\ No newline at end of file |