Table Of Contents
Addresses - CPS-188Getting issue details... STATUS
Overview
CSIT (Continuous System and Integration Testing) is expected to be a part of automated verification procedure invoked on review and merge stages.
The tests are executed as a Jenkins jobs which performs following:
- Builds an image within a local docker (no publishing)
- Executes the integration testing using shell script which
- on startup stage - creates and starts the docker containers based on image built together with other containers required (using docker-compose),
ensures the application is initialized - on test execution stage - executes integration test suites using Robot framework
- on tear down stage - stops and removes containers
- on startup stage - creates and starts the docker containers based on image built together with other containers required (using docker-compose),
- Collects the Robot framework reports
More details on flow: Project-specific CSIT structure
CSIT Migration Notes
Previously all the CSIT tests for all the ONAP projects were allocated in a same repository integration/csit.
Using shared repository did cause organisational difficulties (review approval etc) maintaining the tests, so it was decided to store CSIT tests on a per project basis.
More details: Moving CSIT to project repositories
Implementation approach
Test resources
All the CSIT related resources are allocated in csit/ folder in the project repository root.
The entry point for testing is run-projects-csit.sh shell script
The directory structure:
- plans/ contains testing plans, each sub-folder represents a separate test plan, contains
- startup.sh - serves docker containers startup
- testplan.txt - lists test-suits
- teardown.sh - serves docker containers stopping and images removal
- scripts/ contains shell scripts used on tests executions
- tests/ contains test suits which are processed by folder name (relative to tests folder) taken from testplan.txt