Test suite for Flow rule-based functionality through REST
Purpose
The purpose of this test suite is to verify the functionality of the flow subsystem by comparing the flow rule table on the devices to what ONOS has internally.
Test Overview
In order to test the functionality of the flow subsystem, we use the REST API to perform tasks such as adding flows, deleting flows, and changing selectors and treatments. We then check the devices flow table and what ONOS has registered to make sure the tasks have been completed successfully.
Test Strategy
The test environment consists of three ONOS instances and a simple five switch, linear topology to test various configurations of the flow subsystem. Each test case will perform a well defined task, such as adding a flow, and will always be followed by a check test case to make sure no errors or anomalies have occurred.
Test Scenarios
- Adding flow(s)
- Deleting flow(s)
- Modifying treatments
- Modifying selectors
- Changing the controller of a flow