... | @@ -10,9 +10,9 @@ |
... | @@ -10,9 +10,9 @@ |
|
|
|
|
|
[This repository](https://forge.etsi.org/gitlab/nfv/stf-557/api-tests) hosts the NFV API Conformance test specification for the APIs defined in ETSI NFV GS [SOL002](https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/02.04.01_60/gs_NFV-SOL002v020401p.pdf), [SOL003](https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/02.04.01_60/gs_NFV-SOL003v020401p.pdf), [SOL005](http://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/02.04.01_60/gs_NFV-SOL005v020401p.pdf), in their versions v2.4.1.
|
|
[This repository](https://forge.etsi.org/gitlab/nfv/stf-557/api-tests) hosts the NFV API Conformance test specification for the APIs defined in ETSI NFV GS [SOL002](https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/02.04.01_60/gs_NFV-SOL002v020401p.pdf), [SOL003](https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/02.04.01_60/gs_NFV-SOL003v020401p.pdf), [SOL005](http://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/02.04.01_60/gs_NFV-SOL005v020401p.pdf), in their versions v2.4.1.
|
|
|
|
|
|
The Test Specification is built as a collection of [Robot Framework](robotframework.org/) Test Description. [Robot Framework](robotframework.org/) is a generic test automation framework for acceptance testing and acceptance test-driven development.
|
|
The Test Specification is built as a collection of [Robot Framework](http://robotframework.org/) Test Description. [Robot Framework](http://robotframework.org/) is a generic test automation framework for acceptance testing and acceptance test-driven development.
|
|
|
|
|
|
**IMPORTANT: This repository and the NFV API Conformance Test Specification is Work in Progress. The current version focuses on conformance tests of individual SOL002 and SOL003 resource endpoints. The [Robot Framework](robotframework.org/) Test Descriptions are expected to be consolidated and reviewed in the short term, and possibly re-organized to ease automation of NFV workflows testing. SOL005 Test Descriptions are under development and will be contributed during Q1-2019.**
|
|
**IMPORTANT: This repository and the NFV API Conformance Test Specification is Work in Progress. The current version focuses on conformance tests of individual SOL002 and SOL003 resource endpoints. The [Robot Framework](http://robotframework.org/) Test Descriptions are expected to be consolidated and reviewed in the short term, and possibly re-organized to ease automation of NFV workflows testing. SOL005 Test Descriptions are under development and will be contributed during Q1-2019.**
|
|
|
|
|
|
## Content structure
|
|
## Content structure
|
|
|
|
|
... | @@ -24,7 +24,7 @@ e.g. |
... | @@ -24,7 +24,7 @@ e.g. |
|
```
|
|
```
|
|
SOL002/VNF-Configuration-API/
|
|
SOL002/VNF-Configuration-API/
|
|
```
|
|
```
|
|
For each of the interface sub-folders, a list of [Robot Framework](robotframework.org/) files is included, each providing the set of Test Cases related to a given resource endpoint within the reference interface. In addition, the following sub-folders are included:
|
|
For each of the interface sub-folders, a list of [Robot Framework](http://robotframework.org/) files is included, each providing the set of Test Cases related to a given resource endpoint within the reference interface. In addition, the following sub-folders are included:
|
|
```
|
|
```
|
|
<spec_name>/<interface_name>/jsons
|
|
<spec_name>/<interface_name>/jsons
|
|
<spec_name>/<interface_name>/schemas/
|
|
<spec_name>/<interface_name>/schemas/
|
... | @@ -34,19 +34,19 @@ The *jsons* folders include the templates for the JSON requests to be issued aut |
... | @@ -34,19 +34,19 @@ The *jsons* folders include the templates for the JSON requests to be issued aut |
|
|
|
|
|
The *schemas* folders include the JSON schemas for requests and reponses over the . They are extracted from the [SOL002](https://forge.etsi.org/gitlab/nfv/SOL002-SOL003), [SOL003](https://forge.etsi.org/gitlab/nfv/SOL002-SOL003) and [SOL005](https://forge.etsi.org/gitlab/nfv/SOL005) OpenAPIs.
|
|
The *schemas* folders include the JSON schemas for requests and reponses over the . They are extracted from the [SOL002](https://forge.etsi.org/gitlab/nfv/SOL002-SOL003), [SOL003](https://forge.etsi.org/gitlab/nfv/SOL002-SOL003) and [SOL005](https://forge.etsi.org/gitlab/nfv/SOL005) OpenAPIs.
|
|
|
|
|
|
The *environment* folders include the list of variables and parameters used in the [Robot Framework](robotframework.org/) Test Cases. The tester is expected to value these variables according to the tests to be executed.
|
|
The *environment* folders include the list of variables and parameters used in the [Robot Framework](http://robotframework.org/) Test Cases. The tester is expected to value these variables according to the tests to be executed.
|
|
|
|
|
|
## Dependencies and Preconditions
|
|
## Dependencies and Preconditions
|
|
The main precondition for running the tests is having [Robot Framework](robotframework.org/) installed.
|
|
The main precondition for running the tests is having [Robot Framework](http://robotframework.org/) installed.
|
|
The [Robot Framework Installation Instructions](https://github.com/robotframework/robotframework/blob/master/INSTALL.rst) provide full details of the installation procedure.
|
|
The [Robot Framework Installation Instructions](https://github.com/robotframework/robotframework/blob/master/INSTALL.rst) provide full details of the installation procedure.
|
|
For those familiar with installing Python packages with [pip](http://pip-installer.org/) package manager, the following command can be run to install [Robot Framework](robotframework.org/):
|
|
For those familiar with installing Python packages with [pip](http://pip-installer.org/) package manager, the following command can be run to install [Robot Framework](http://robotframework.org/):
|
|
```
|
|
```
|
|
$ pip install robotframework
|
|
$ pip install robotframework
|
|
```
|
|
```
|
|
[Robot Framework](robotframework.org/) 3.0 is recommended for this NFV API Conformance Test Specification. It requires Python 3.
|
|
[Robot Framework](http://robotframework.org/) 3.0 is recommended for this NFV API Conformance Test Specification. It requires Python 3.
|
|
|
|
|
|
### Robot Framework Required Libraries
|
|
### Robot Framework Required Libraries
|
|
The [Robot Framework](robotframework.org/) Test Cases in this repository depend on the following libraries:
|
|
The [Robot Framework](http://robotframework.org/) Test Cases in this repository depend on the following libraries:
|
|
|
|
|
|
* [RESTInstance](https://github.com/asyrjasalo/RESTinstance)
|
|
* [RESTInstance](https://github.com/asyrjasalo/RESTinstance)
|
|
* [DependencyLibrary](https://github.com/mentalisttraceur/robotframework-dependencylibrary)
|
|
* [DependencyLibrary](https://github.com/mentalisttraceur/robotframework-dependencylibrary)
|
... | @@ -79,14 +79,14 @@ json/vnfConfigModifications.json |
... | @@ -79,14 +79,14 @@ json/vnfConfigModifications.json |
|
```
|
|
```
|
|
coming with the tests as an example, and replace the place holders such as ``"string"`` with the meaningful values for the current tests.
|
|
coming with the tests as an example, and replace the place holders such as ``"string"`` with the meaningful values for the current tests.
|
|
|
|
|
|
The [Robot Framework](robotframework.org/) Test Cases in this repository can be executed with the following command:
|
|
The [Robot Framework](http://robotframework.org/) Test Cases in this repository can be executed with the following command:
|
|
```
|
|
```
|
|
$ robot <name_of_the_robot_file>
|
|
$ robot <name_of_the_robot_file>
|
|
```
|
|
```
|
|
To execute all test case files in a directory recursively, just give the directory as an argument. You can also give multiple files or directories in one go and use various command line options supported by [Robot Framework](robotframework.org/).
|
|
To execute all test case files in a directory recursively, just give the directory as an argument. You can also give multiple files or directories in one go and use various command line options supported by [Robot Framework](http://robotframework.org/).
|
|
|
|
|
|
For more information about the command line usage, you can run:
|
|
For more information about the command line usage, you can run:
|
|
```
|
|
```
|
|
$ robot --help
|
|
$ robot --help
|
|
```
|
|
```
|
|
The [Robot Framework User Guide](http://robotframework.org/robotframework/#user-guide) provides full details on how to execute tests in general. |
|
The [Robot Framework User Guide](http://robotframework.org/robotframework/latest/RobotFrameworkUserGuide.html#executing-test-cases) provides full details on how to execute tests in general. |