Skip to content

Latest commit

 

History

History
118 lines (93 loc) · 3.16 KB

test-requirements-template.md

File metadata and controls

118 lines (93 loc) · 3.16 KB
name about title labels assignees
New featureprofiles test requirement
Use this template to document the requirements for a new test to be implemented.
enhancement

Instructions for this template

Below is the required template for writing test requirements. Good examples of test requirements include:

TestID-x.y: Short name of test here

Summary

Write a few sentences or paragraphs describing the purpose and scope of the test.

Testbed type

  • Specify the .testbed topology file from the topologies folder to be used with this test

Procedure

Test environment setup

  • Description of procedure to configure ATE and DUT with pre-requisites making it possible to cover the intended paths and RPCs.

TestID-x.y.1 - Name of subtest 1

The following steps are typically present in each subtest.

  • Step 1 - Generate DUT configuration

Replace this JSON formatted content with the "Canonical OC" that is expected to be generated by the subtest. This configuration should be in JSON format.

{
  "openconfig-qos": {
    "interfaces": [
      {
        "config": {
          "interface-id": "PortChannel1.100"
        },
        "input": {
          "classifiers": [
            {
              "classifier": "dest_A",
              "config": {
                "name": "dest_A",
                "type": "IPV4"
              }
            }
          ],
          "scheduler-policy": {
            "config": {
              "name": "limit_group_A_1Gb"
            }
          }
        },
        "interface": "PortChannel1.100"
      },
    ]
  }
}
  • Step 2 - Push configuration to DUT using gnmi.Set with REPLACE option
  • Step 3 - Send Traffic
  • Step 4 - Validation with pass/fail criteria

TestID-x.y.2 - Name of subtest 2

Repeat the format of the first subtest for each additional subtest defined.

OpenConfig Path and RPC Coverage

This yaml stanza defines the OC paths intended to be covered by this test. OC paths used for test environment setup are not required to be listed here. This content is parsed by automation to derive the test coverage

paths:
  # interface configuration
  /interfaces/interface/config/description:
  /interfaces/interface/config/enabled:
  # name of chassis and linecard components
  /components/component/state/name:
    platform_type: ["CHASSIS", "LINECARD"]

rpcs:
  gnmi:
    gNMI.Set:
      union_replace: true
    gNMI.Subscribe:
      on_change: true

Required DUT platform

  • Specify the minimum DUT-type:
    • MFF - A modular form factor device containing LINECARDs, FABRIC and redundant CONTROLLER_CARD components
    • FFF - fixed form factor
    • vRX - virtual router device