You are viewing an old version of this page. View the current version.
Compare with Current
View Page History
« Previous
Version 2
Next »
Overview
The Unit Test Plan (UTP) will follow the same section breakdown as the Requirements in the Scope & Requirement Document [1].
The following types of tests shall be included where it makes sense.
- In-Range UT - these are the test cases which cover normal operations.
- Out-of-Range UT - these are the test cases which cover out of range scenarios:
- border cases
- race conditions
- unexpected events
- EX: Tearing down an active Network Interface
- Error UT
- Error parameters
- Error Conditions
- network goes down unexpectedly
- Wire gets disconnected, etc
Performance Testing cases will be a separate section in this document.
Unit Test Plan
Configuration tests should be done through the DLC direct interface, as well as the YAML interface.
Basic API
This section lists unit test cases that verify basic functionality, i.e. adding, deleting and showing UDSP rules. These test focus on UDSP API and don't generate any traffic.
Expected Behavior
Basic UT
Primary Requirement ID | Secondary Requirement ID | Unit Test ID | Unit Test Description |
---|
|
|
| - Setup: configure single network, 3 NIDs on the network
- Execute UDSP "Show" command
- Verify that the resulting YAML file doesn't contain any policy description
|
|
|
| - Setup: configure single network, 3 NIDs on the network
- Add UDSP with the rule that gives two of the interfaces highest priority
- Execute UDSP "Show" command
- Verify that the resulting YAML file contains policy description as expected
|
|
|
| - Setup: configure single network, 3 NIDs on the network
- Add UDSP with the rule that gives two of the interfaces highest priority
- Execute UDSP "Show" command
- Verify that the resulting YAML file contains policy description as expected
- Add UDSP that lowers the priority of one of the NIDs with highest priority back to default
- Execute UDSP "Show" command
- Verify that the resulting YAML file contains policy description as expected
|
|
|
| - Setup: configure two networks, two NIDs on each network
- Add UDSP with the rule that gives one of the networks highest priority
- Add UDSP with the rule that gives the highest priority to one of the NIDs on the network with the highest priority
- Execute UDSP "Show" command
- Verify that the resulting YAML file contains policy description as expected (for network and NID)
- Delete UDSP rule that gives the highest priority to one of the NIDs
- Execute UDSP "Show" command
- Verify that the resulting YAML file contains policy description as expected (for network)
- Delete UDSP rule that gives the highest priority to one of the networks
- Execute UDSP "Show" command
- Verify that the resulting YAML file doesn't contain any policy description
|
|
|
| - Setup: configure single network, 3 NIDs on the network locally, 3 NIDs on the remote peer
- Add UDSP with the rule that gives priority to one of the remote peer's NIDs
- Execute UDSP "Show" command
- Verify that the resulting YAML file contains policy description as expected
- Delete UDSP rule that gives the highest priority to the remote peer's NID
- Execute UDSP "Show" command
- Verify that the resulting YAML file doesn't contain any policy description
|
|
|
| - Setup: configure single network, 3 NIDs on the network locally, 3 NIDs on the local peer
- Add UDSP with the rule that gives priority to a pair of the local NID and peer's NID
- Execute UDSP "Show" command
- Verify that the resulting YAML file contains policy description as expected
- Delete UDSP rule that gives the highest priority to the NID pair
- Execute UDSP "Show" command
- Verify that the resulting YAML file doesn't contain any policy description
|
Local Network Configuration
Expected Behavior
In-Range UT
Primary Requirement ID | Secondary Requirement ID | Unit Test ID | Unit Test Description |
---|
|
|
| - Setup: configure single network, 3 NIDs on the network
- Add UDSP with the rule that gives one of the interfaces highest priority
- Start traffic
- Stop traffic
- Verify that the NID with the highest priority was used
|
|
|
| - Setup: configure single network, 3 NIDs on the network
- Add UDSP with the rule that gives two of the interfaces highest priority
- Start traffic
- Stop traffic
- Verify that two NIDs with the highest priority were used
|
|
|
| - Setup: configure single network, 3 NIDs on the network
- Add UDSP with the rule that gives two of the interfaces highest priority
- Start traffic
- Stop traffic
- Verify that two NIDs with the highest priority were used
- Add UDSP that lowers the priority of one of the NIDs with highest priority back to default
- Start traffic
- Stop traffic
- Verify that the remaining highest-priority NID was used
|
|
|
| - Setup: configure single network, 3 NIDs on the network
- Add UDSP with the rule that gives two of the interfaces highest priority
- Start traffic
- Stop traffic
- Verify that two NIDs with the highest priority were used
- Add UDSP that lowers the priority of both of the NIDs with the highest priority back to default
- Start traffic
- Stop traffic
- Verify that all NIDs are used
|
|
|
| - Setup: configure two networks, two NIDs on each network
- Add UDSP with the rule that gives one of the networks highest priority
- Start traffic
- Stop traffic
- Verify that NIDs on the network with the highest priority were used
|
|
|
| - Setup: configure two networks, two NIDs on each network
- Add UDSP with the rule that gives one of the networks highest priority
- Start traffic
- Stop traffic
- Verify that NIDs on the network with the highest priority were used
- Add UDSP with the rule that reverses networks priorities
- Start traffic
- Stop traffic
- Verify that NIDs on the new network that has the highest priority were used
|
|
|
| - Setup: configure two networks, two NIDs on each network
- Add UDSP with the rule that gives one of the networks highest priority
- Add UDSP with the rule that gives the highest priority to one of the NIDs on the network with the highest priority
- Start traffic
- Stop traffic
- Verify that the NID with highest priority on the network with highest priority was used
|
Out-of-Range UT
Primary Requirement ID | Secondary Requirement ID | Unit Test ID | Unit Test Description |
---|
|
|
|
|
|
|
|
|
Error UT
Primary Requirement ID | Secondary Requirement ID | Unit Test ID | Unit Test Description |
---|
|
|
|
|
|
|
|
|
Remote Peer Configuration
Expected Behavior
In-Range UT
Primary Requirement ID | Secondary Requirement ID | Unit Test ID | Unit Test Description |
---|
|
|
|
|
|
|
|
|
|
|
|
|
Out-of-Range UT
Primary Requirement ID | Secondary Requirement ID | Unit Test ID | Unit Test Description |
---|
|
|
|
|
|
|
|
|
Error UT
Primary Requirement ID | Secondary Requirement ID | Unit Test ID | Unit Test Description |
---|
|
|
|
|
|
|
|
|
Functional Requirements
Glossary
Term | Meaning |
---|
LNet |
|
UDSP | User Defined Selection Policy |
UTP | Unit Test Plan |
DLC | Dynamic LNet Config (e.g. let, lnetctl scripts) |
NI | Network Interface |
RPC | Remote Procedure Call |
FS | File System |
o2ib | Infiniband Network |
tcp | Ethernet based Network |
NUMA | Non-Uniform Memory Access |
RR | Round Robin |
CPT | CPU Partition |
CB | Channel Bonding |
NID | Network Identifier |
References