Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

A test engine and a number of test script is used as a foundation for the test environment.  The requirements to   

The test environment uses docker images both the Non-RT RIC components as well as for the the needed simulators.

Function test is normally started in "docker-mode" meaning that images will be started as container in a private docker network. As an option, the same test case also executed in a minikube environment. Running in minikube is still in an experimental state so docker should be used as a the standard execution environment.

The basic idea of function test is to run the Non-RT RIC components and test the exposed interfaces using simulators. The test engine and the test scripts controls the behaviour of the simulators but also use the exposed interfaces for test and monitoring. 

The test scripts are designed in a way so that the same script can be used for testing of the functionality in the master branch as well as previous release(s). The supported branches/releases are indicated by the existence of a environment variable file in the test/common dir with the name of the branch. The environment for master has the name of coming release. 

The majority of the test scripts test one or several aspects of the functionality but there is also test scripts for stability tests over longer period of time (currently 3 days max intensity test).

...

The picture below shows the setup used for function tests. Non-RT RIC components in orange, simulators in light blue and the test environment in dark blue. The purple arrow is outside the scope of the test but is used for demo test scripts.

Image RemovedImage Added

Test scripts/Test cases

...

  • Bash shell
  • docker (latest)
  • docker-compose (latest)
  • python3 (latest)
  • minikube (latest) - only needed when running in kubernetes mode

The test engine as well as all available test scripts is available in the nonrtric repo. Clone the repo and go to the auto-test directory:

...

Start the appropriate test script with the command below. No further action is required. The tests are fully automated. Once the execution is completed a test report is printed. 

Example, run images from the staging repor. To run only release images, add the parameter 'release' after the 'docker' parameter.

Code Block
languagebash
$ ./FTC100.sh remote docker --env-file ../common/test_env-oran-master.sh

For further information and details, see README in the dirs 'auto-test' and 'common'.

Tested image versions

Componentimage (release repo)tagprofile (release)
Policy Management Service

nexus3.o-ran-sc.org:

10004

10002/o-ran-sc/nonrtric-policy-agent

2.1.
0
1
master
cherry
A1-controller

nexus3.o-ran-sc.org:

10004

10002/o-ran-sc/nonrtric-a1-controller

2.0.1
.0
master
cherry
Enrichment Coordinator Service 
nexus3.o-ran-sc.org:
10003
10002/o-ran-sc/nonrtric-enrichment-coordinator-service1.0.
0-SNAPSHOT
1
master
cherry
Control Panel

nexus3.o-ran-sc.org:

10004

10002/o-ran-sc/nonrtric-controlpanel

2.
0
1.0
master
cherry
A1-Simulator

nexus3.o-ran-sc.org:

10004

10002/o-ran-sc/a1-simulator

2.1.0cherry
R-APP Cataloguenexus3.o-ran-sc.org:10002/o-ran-sc/nonrtric-r-app-catalogue1.0.1
master
cherry

"profile" refers to the name of the environment variable profile used when executed a test case. There is always a profile for "master" which is the lastest available version and then a profile for each release.Currently (nov 2020) the master profile targets the Cherry releaseThe profiles has the pattern 'test_env-oran<profile-name>.sh in the test/common dir.