commit | 532f67a056f31490f0a82a2f0de4bf7cc288ecdd | [log] [tgz] |
---|---|---|
author | Suchitra Vemuri <suchitra@opennetworking.org> | Wed Sep 25 11:50:42 2019 -0700 |
committer | Suchitra Vemuri <suchitra@opennetworking.org> | Wed Sep 25 12:09:42 2019 -0700 |
tree | d6bfec2c27d71d4a5192a3683b1bcc72aae4788d | |
parent | ec53a1be69b00bc5c4ac6f6da1192705d00d9744 [diff] |
[VOL-1954] framework updates Change-Id: Iae70ab3f4b03e50178eedea98adbc8d955d3eaaf
Automated test-suites to validate the stability/functionality of VOLTHA. Tests that reside in here should be written in Robot Framework and Python.
Intended use includes:
Python virtualenv
voltctl
- a command line tool to access VOLTHA. Reference - voltctl
kubectl
- a command line tool to access your Kubernetes Clusers. Reference
voltctl
and kubectl
must be properly configured on your system prior to any test executions
Directory is structured as follows:
├── tests └── sanity/ // basic tests that should always pass. Will be used as gating-patchsets └── functional/ // feature/functionality tests that should be implemented as new features get developed └── libraries // shared test keywords (functions) across various test suites └── variables // shared variables across various test suites
To run the the sanity tests using an environment previously set up by kind-voltha, run:
make sanity-kind
This test execution will generate three report files in voltha-system-tests/tests/sanity
(output.xml
, report.html
, log.html
). View the report.html
page in a browser to analyze the results.
The make sanity-kind
target is equivalent to the following:
ROBOT_PORT_ARGS="-v ONOS_REST_PORT:8181 -v ONOS_SSH_PORT:8101" \ ROBOT_TEST_ARGS="--exclude notready --critical sanity" \ ROBOT_MISC_ARGS="-v num_onus:1" \ make sanity
If you are running the tests in another environment, you can run make sanity
with the arguments appropriate for your environment. Look at variables.robot for a list of variables that you may need to override.
Most additions should be done by adding keywords to the libraries, then calling these keywords from the tests. Consult a guide on how to write good Robot framework tests.
Make sure that make lint
passes, which runs robotframework-lint on any new code that is created.