Update README to clarify the common testing scenarios 92/13592/4
authorgarciadeblas <gerardo.garciadeblas@telefonica.com>
Tue, 27 Jun 2023 22:21:14 +0000 (00:21 +0200)
committergarciadeblas <gerardo.garciadeblas@telefonica.com>
Wed, 28 Jun 2023 11:58:29 +0000 (13:58 +0200)
Change-Id: I80f0ac743f8ab7d22733cfc16ddead5101546665
Signed-off-by: garciadeblas <gerardo.garciadeblas@telefonica.com>
README.md

index 0c8afbf..ad0cde8 100644 (file)
--- a/README.md
+++ b/README.md
@@ -17,7 +17,7 @@ limitations under the License
 
 # OSM test automation project - osm/tests
 
-This repository contains tools and configuration files for testing and automation needs of OSM projet
+This repository contains tools and configuration files for testing and automation needs of OSM project.
 
 ## Prerequisites
 
@@ -25,22 +25,17 @@ This repository contains tools and configuration files for testing and automatio
 - VIM already registered in OSM
 - K8s cluster already registered in OSM (for tests involving a K8s cluster)
 
-## Quickstart (run tests using docker)
+## Quickstart. How to run tests using OSM docker images
 
 ### Configure the environment file
 
-```
-export OSM_HOSTNAME=<OSM_IP_ADDRESS>
-export VIM_TARGET=<VIM_REGISTERED_AT_OSM>
-export VIM_MGMT_NET=<NAME_OF_THE_MGMT_NETWORK_IN_THE_VIM>
-export K8S_CREDENTIALS= # path to the kubeconfig file of the K8s cluster to be tested
-export OS_CLOUD=    # OpenStack Cloud defined in $HOME/.config/openstack/clouds.yaml or in /etc/openstack/clouds.yaml
-```
-
-### Create the docker container
+Create a file `envconfig.rc` copying from `envconfig-local.rc` and set the required variables.
 
-```bash
-docker build -f docker/Dockerfile -t osmtests .
+```
+OSM_HOSTNAME=<OSM_IP_ADDRESS>
+VIM_TARGET=<VIM_REGISTERED_AT_OSM>
+VIM_MGMT_NET=<NAME_OF_THE_MGMT_NETWORK_IN_THE_VIM>
+OS_CLOUD=<OPENSTACK_CLOUD>    # OpenStack Cloud defined in $HOME/.config/openstack/clouds.yaml or in /etc/openstack/clouds.yaml
 ```
 
 ### Run the tests
@@ -49,32 +44,41 @@ docker build -f docker/Dockerfile -t osmtests .
 docker run --rm=true --name tests -t --env-file envconfig.rc \
            -v ~/.config/openstack/clouds.yaml:/etc/openstack/clouds.yaml \
            -v ~/tests/reports:/robot-systest/reports \
-           osmtests \
-           -t sol003_01
+           opensourcemano/tests:testing-daily \
+           -t sanity
 ```
 
-You can use a different robot tag instead of `sol003_01`. The whole list of tags are gathered below in this README.
+You can use a different robot tag instead of `sanity`. The whole list of tags are gathered below in this README.
+
+## How to build docker container for tests and run tests from there
+
+### Create the docker container
+
+```bash
+docker build -f docker/Dockerfile -t osmtests .
+```
 
-## How to run sanity tests using daily images from master branch
+### Run the tests
 
 ```bash
 docker run --rm=true --name tests -t --env-file envconfig.rc \
            -v ~/.config/openstack/clouds.yaml:/etc/openstack/clouds.yaml \
            -v ~/tests/reports:/robot-systest/reports \
-           opensourcemano/tests:testing-daily \
-           -t sanity
+           osmtests \
+           -t sol003_01
 ```
 
 ## How to mount local tests folder for developing purposes
 
-The following line will mount the required files for `sol003_01` testuite and will execute that testsuite:
+The following line will mount the folder `robot-systest`, including all libraries and testuites, and will execute the testsuite `sol003_01`:
 
 ```bash
 docker run --rm=true --name tests -t --env-file envconfig.rc \
            -v ~/.config/openstack/clouds.yaml:/etc/openstack/clouds.yaml \
+           -v ~/tests/robot-systest:/robot-systest \
            -v ~/tests/reports:/robot-systest/reports \
-           -v ~/tests/robot-systest/lib/sol003_common_lib.robot:/robot-systest/lib/sol003_common_lib.robot \
-           osmtests \
+           -v ~/osm-packages:/robot-systest/osm-packages \
+           opensourcemano/tests:testing-daily \
            -t sol003_01
 ```
 
@@ -92,10 +96,11 @@ Other relevant options to run tests are:
 - `-p <package_branch>` [OPTIONAL]: OSM packages repository branch. Default: master
 - `-t <testing_tags>` [OPTIONAL]: Robot tests tags. [sanity, regression, particular_test]. Default: sanity
 
-
 ## How to run tests from a host
 
-### Installing
+In general, testing from docker images is the best way if you want to develop for OSM. However, sometimes it could be useful to run tests directly from the host.
+
+### Install dependencies
 
 This bash script can be used to setup your environment to execute the tests.
 
@@ -111,12 +116,20 @@ git clone https://osm.etsi.org/gitlab/vnf-onboarding/osm-packages.git
 
 ### Configure the environment
 
-Create a file `envfile.rc` copying from `envconfig-local.rc` and set the required variables.
+Create a file `envconfig.rc` copying from `envconfig-local.rc` and set the required variables (in this case, the use of `export` is mandatory).
+
+```
+export OSM_HOSTNAME=<OSM_IP_ADDRESS>
+export VIM_TARGET=<VIM_REGISTERED_AT_OSM>
+export VIM_MGMT_NET=<NAME_OF_THE_MGMT_NETWORK_IN_THE_VIM>
+export OS_CLOUD=<OPENSTACK_CLOUD>    # OpenStack Cloud defined in $HOME/.config/openstack/clouds.yaml or in /etc/openstack/clouds.yaml
+export K8S_CREDENTIALS= # path to the kubeconfig file of the K8s cluster to be tested
+```
 
 ### Running the tests
 
 ```bash
-source envfile.rc
+source envconfig.rc
 mkdir reports
 robot -d reports -i <testing_tags> testsuite/
 ```
@@ -241,5 +254,5 @@ We use [SemVer](http://semver.org/) for versioning. For the versions available,
 
 ## License
 
-This project is licensed under the Apache2 License - see the [LICENSE.md](LICENSE) file for details
+This project is licensed under the Apache2 License - see the [LICENSE](LICENSE) file for details