References
- AAI CSIT Test Cases
- https://gerrit.onap.org/r/gitweb?p=integration/csit.git;a=tree;f=scripts;hb=HEAD
- https://gerrit.onap.org/r/gitweb?p=testsuite.git;a=tree;f=robot/resources/aai;hb=HEAD
- AAI-BBS Proposals for Dublin Release#BBSProposalsforDublinRelease-Item7.Addrobottestcases
- Using Robot Command Line
- Robot Healthcheck Tests on ONAP Components
- https://github.com/robotframework/robotframework
- https://github.com/robotframework/robotframework/tree/master/doc
- http://robotframework.org/robotframework/latest/RobotFrameworkUserGuide.html
- Contributing To AAI Best Practise
- See "CSIT Jobs in ONAP CI" section in CIA 2019-02-22 Meeting notes
Discussion
Need a better end-to-end test (that exercises model loader/babel, haproxy, resources, traversal, graphadmin)
Need to include testing for services that aren't in the critical flow (sparky, search-data-service, data-router, spike, champ, gizmo, etc)
Suggestions
8th Jan: Testing should cover this case: - MSB-198Getting issue details... STATUS
20th Feb: Move from CSIT to Robot. See PTL 2019-02-19 presentation https://wiki.onap.org/download/attachments/53249527/Dev%20Testing_Enhancement%20for%20Dublin_V2.pptx?version=1&modificationDate=1550580552000&api=v2
21st Feb:
- Trial new robot scripts for BBS use case Keong Lim - AAI-2184Getting issue details... STATUS or CCVPN use case - AAI-2208Getting issue details... STATUS
- develop AAI best practises Contributing To AAI Best Practise
- write up new tutorial AAI Tutorial-Making and Testing a Schema Change - Dublin
Procedure
Follow testsuite Readme for setup: https://gerrit.onap.org/r/gitweb?p=testsuite.git;a=blob;f=README.md;hb=HEAD
Python Installation
As of 25th Feb 2019, Python 2.7.12 was replaced by 2.7.15 so that version was installed instead. See also the note about deprecation in the python output below.
Robotframework Installation
As of 25th Feb 2019, Nokia Robot Editor (RED) 0.7.0 was replaced by 0.8.11, so that version was installed instead: https://github.com/nokia/RED/releases/
Note that the "product" contains a stand-alone copy of Eclipse, whereas the "feature" is an add-on to a pre-existing installation of Eclipse: https://github.com/nokia/RED/blob/master/installation.md
Setup.sh
Looking into https://gerrit.onap.org/r/gitweb?p=testsuite.git;a=blob;f=setup.sh;hb=HEAD
Due to local differences in my environment, copied the "pip install" commands and ran them individually instead of the whole setup.sh script.
On the heatbridge setup, got "error: Microsoft Visual C++ 9.0 is required. Get it from http://aka.ms/vcpython27" which needs fixing.
chromedriver
As of 25th Feb 2019, chromedriver 2.43 was replaced by 2.46, so that version was installed instead: http://chromedriver.storage.googleapis.com/index.html?path=2.46/
Other
The setup for kafkacat and protobuf does not appear to support Windows, so these were not installed on this environment.
Using RED
Clone testsuite repository, see https://gerrit.onap.org/r/#/admin/projects/testsuite
In RED, use "File / Open Projects from File System" menu and choose the "testsuite/robot" sub-directory.
The file format is described in http://robotframework.org/robotframework/latest/RobotFrameworkUserGuide.html#supported-file-formats
Settings section
The Settings section appears to have some references to other files as "Library" or "Resource". These files act as shared modules implementing common sub-routines. The "Documentation" appears to be a comment for the file.
Variables section
See also http://robotframework.org/robotframework/latest/RobotFrameworkUserGuide.html#variables
This section appears to define variables or macros with values that can be used in the "Keywords" section. They are potentially available to other Robot scripts as well, see also the "global_properties" script.
It appears that all variables share the global namespace, so naming conventions are used to distinguish between variables that are intended for global use (prefixed by "GLOBAL" and written in all-caps) vs variables intended for local use.
Keywords section
See also http://robotframework.org/robotframework/latest/RobotFrameworkUserGuide.html#creating-user-keywords
This section appears to define sub-routines that can be called by other "keywords". The "[Documentation]" appears to be a comment for the sub-routine. The "[Arguments]" appears to be a list of named parameters passed into the sub-routine. The lines that follow appear to be calls to other sub-routines in sequential order. Values can be returned from sub-routines and internal structures of the values can also be extracted and processed.
Worked Examples