Architecture Overview
TestON for ONOS: Paxterra’s TestON is made out of a set of drivers that connect to various components. In our case, these components will be ONOS and Mininet, and can be pointed to either the same or different IP addresses. TestON manipulates these components through a set of ssh handles created using Python’s pexpect. The test structure is comprised of a set of different tests, each with a number of test-cases inside. Each test-case returns a pass/fail result and can stand alone in theory. However, more complete tests can be created by running multiple test-cases in series, which will return a percentage pass/fail result of all the containing test-cases. There will be certain test-case combinations that make more sense then others, and they will be placed in a sensible order, but in the end it is up to the user to determine logical sequences that produce meaningful data.
Test Suite File Structure: There are three main files that define a specific test in TestON:
Topology file ( .topo ) This file defines all the components and options that TestON will use to execute its test. For example, the .topo file would include the login info and Mininet parameters for the machine that was going to host Mininet for the test. At the beginning of the test, TestON will automatically connect all components.
Parameters file ( .params ) This is a custom file in which commonly configured variables can be placed in order to modularize the test cases.
Python file ( .py ) This is where all of the test-cases are written. TestON calls upon functions implemented in the respective drivers to create a progression of events that produces a pass/fail outcome.
You can start by: