blob: 9c29e73465782dbd2420effb46541e27268caa38 [file] [log] [blame]
==========================================
Instructions For Running The ROC API Tests
==========================================
The REST API of the Aether ROC is tested utilizing the Robot Framework.
The tests are located inside the aether-system-tests repository and they are run nightly using
Jenkins job.
Development Prerequisites
^^^^^^^^^^^^^^^^^^^^^^^^^
To access the ROC API from a local system, it is necessary to deploy the components of ยตONOS.
This can be done with the use of Helm (see instructions on
`this page <https://docs.onosproject.org/onos-docs/docs/content/developers/deploy_with_helm/>`_).
| Additionally, it is necessary to add the sdran chart repo with the following command:
| ``helm repo add sdran --username USER --password PASSWORD https://sdrancharts.onosproject.org``
| , where USER and PASSWORD can be obtained from the Aether Login Information file, which is
| accessibble to the ``onfstaff`` group.
Access the ROC API
^^^^^^^^^^^^^^^^^^
Follow the steps below to access the ROC API:
| 1. Deploy the aether-roc-umbrella chart from the sdran repo with the following command:
| ``helm -n micro-onos install aether-roc-umbrella sdran/aether-roc-umbrella``
| 2. Check if all pods are in a Running state with the command ``kubectl -n micro-onos get pods``
| This should give a list like:
+---------------------------------+-------+---------+----------+-----+
| NAME | READY | STATUS | RESTARTS | AGE |
+---------------------------------+-------+---------+----------+-----+
| aether-roc-api-56f54d69d4-b4mkk | 1/1 | Running | 0 | 46s |
+---------------------------------+-------+---------+----------+-----+
| aether-roc-gui-75d6bf95d7-998bg | 1/1 | Running | 0 | 47s |
+---------------------------------+-------+---------+----------+-----+
| onos-cli-77d589f9c7-7jzcl | 1/1 | Running | 0 | 46s |
+---------------------------------+-------+---------+----------+-----+
| onos-config-6646dcb964-kslbs | 2/2 | Running | 0 | 46s |
+---------------------------------+-------+---------+----------+-----+
| onos-consensus-db-1-0 | 1/1 | Running | 0 | 46s |
+---------------------------------+-------+---------+----------+-----+
| onos-gui-dfd58b788-bkj6l | 2/2 | Running | 0 | 46s |
+---------------------------------+-------+---------+----------+-----+
| onos-topo-6948484f46-6m6fg | 1/1 | Running | 0 | 46s |
+---------------------------------+-------+---------+----------+-----+
| sdcore-adapter-69bff5fc45-79pld | 1/1 | Running | 0 | 47s |
+---------------------------------+-------+---------+----------+-----+
| 3. Once all pods are in a Running state, port-forward to port 8181 with the following command:
| ``kubectl -n micro-onos port-forward $(kubectl -n micro-onos get pods -l type=api -o name) 8181``
Running the tests
^^^^^^^^^^^^^^^^^
| 1. Checkout the aether-system-tests repo:
| ``git clone "ssh://$GIT_USER@gerrit.opencord.org:29418/aether-system-tests"``
| 2. Go to the repo directory:
| ``cd aether-system-tests``
| 3. Install the requirements:
| ``make ast-venv``
| 4. The ROC API test files are located inside the ``tests/roc/api`` directory. There is a test file
| for each of the API end points. For example, we can run the test file for ``access-profile`` with
| the following command:
| ``robot tests/roc/api/access-profile.robot``
| This will generate test reports and logs in the current directory.