X-Git-Url: https://gerrit.fd.io/r/gitweb?p=csit.git;a=blobdiff_plain;f=resources%2Flibraries%2Frobot%2Fperformance%2Fperformance_setup.robot;h=83f5bc914fa2423f353f8ab93c2c5f79e1d71760;hp=0a1eeec955eaa290c46489d00d87e71879785e8c;hb=12eab1e564e0d5ab34a341039b92612de2973f3c;hpb=a6018da33d315b25274d80816d8050ba66ea7901 diff --git a/resources/libraries/robot/performance/performance_setup.robot b/resources/libraries/robot/performance/performance_setup.robot index 0a1eeec955..83f5bc914f 100644 --- a/resources/libraries/robot/performance/performance_setup.robot +++ b/resources/libraries/robot/performance/performance_setup.robot @@ -24,67 +24,6 @@ # Keywords used in setups and teardowns -| Set variables in 2-node circular topology -| | [Documentation] -| | ... | Compute path for testing on two given nodes in circular -| | ... | topology and set corresponding suite variables. -| | ... -| | ... | _NOTE:_ This KW sets following suite variables: -| | ... | - tg - TG node -| | ... | - tg_if1 - 1st TG interface towards DUT. -| | ... | - tg_if2 - 2nd TG interface towards DUT. -| | ... | - dut1 - DUT1 node -| | ... | - dut1_if1 - 1st DUT interface towards TG. -| | ... | - dut1_if2 - 2nd DUT interface towards TG. -| | ... -| | Append Nodes | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['TG']} -| | Compute Path | always_same_link=${FALSE} -| | ${tg_if1} | ${tg}= | First Interface -| | ${dut1_if1} | ${dut1}= | First Ingress Interface -| | ${dut1_if2} | ${dut1}= | Last Egress Interface -| | ${tg_if2} | ${tg}= | Last Interface -| | Set Suite Variable | ${tg} -| | Set Suite Variable | ${tg_if1} -| | Set Suite Variable | ${tg_if2} -| | Set Suite Variable | ${dut1} -| | Set Suite Variable | ${dut1_if1} -| | Set Suite Variable | ${dut1_if2} - -| Set variables in 3-node circular topology -| | [Documentation] -| | ... | Compute path for testing on three given nodes in circular -| | ... | topology and set corresponding suite variables. -| | ... -| | ... | _NOTE:_ This KW sets following suite variables: -| | ... | - tg - TG node -| | ... | - tg_if1 - TG interface towards DUT1. -| | ... | - tg_if2 - TG interface towards DUT2. -| | ... | - dut1 - DUT1 node -| | ... | - dut1_if1 - DUT1 interface towards TG. -| | ... | - dut1_if2 - DUT1 interface towards DUT2. -| | ... | - dut2 - DUT2 node -| | ... | - dut2_if1 - DUT2 interface towards DUT1. -| | ... | - dut2_if2 - DUT2 interface towards TG. -| | ... -| | Append Nodes | ${nodes['TG']} | ${nodes['DUT1']} | ${nodes['DUT2']} -| | ... | ${nodes['TG']} -| | Compute Path -| | ${tg_if1} | ${tg}= | Next Interface -| | ${dut1_if1} | ${dut1}= | Next Interface -| | ${dut1_if2} | ${dut1}= | Next Interface -| | ${dut2_if1} | ${dut2}= | Next Interface -| | ${dut2_if2} | ${dut2}= | Next Interface -| | ${tg_if2} | ${tg}= | Next Interface -| | Set Suite Variable | ${tg} -| | Set Suite Variable | ${tg_if1} -| | Set Suite Variable | ${tg_if2} -| | Set Suite Variable | ${dut1} -| | Set Suite Variable | ${dut1_if1} -| | Set Suite Variable | ${dut1_if2} -| | Set Suite Variable | ${dut2} -| | Set Suite Variable | ${dut2_if1} -| | Set Suite Variable | ${dut2_if2} - | Set variables in 2-node circular topology with DUT interface model | | [Documentation] | | ... | Compute path for testing on two given nodes in circular topology @@ -437,6 +376,68 @@ | | Initialize DPDK Environment | ${dut1} | ${dut1_if1} | ${dut1_if2} | | Initialize DPDK Environment | ${dut2} | ${dut2_if1} | ${dut2_if2} +| Set up SRIOV 2-node performance topology with DUT's NIC model +| | [Documentation] +| | ... | Suite preparation phase that sets default startup configuration of +| | ... | VPP on all DUTs. Updates interfaces on all nodes and sets global +| | ... | variables used in test cases based on interface model provided as an +| | ... | argument. Initializes traffic generator. +| | ... | It configures PCI device with VFs on all DUTs. +| | ... +| | ... | *Arguments:* +| | ... | - topology_type - Topology type. Type: string +| | ... | - nic_model - Interface model. Type: string +| | ... | - vf_driver - Virtual function driver. Type: string +| | ... | - numvfs - Number of VFs. Type: integer +| | ... +| | ... | *Example:* +| | ... +| | ... | \| Set up SRIOV 2-node performance topology with DUT's NIC model \ +| | ... | \| L2 \| Intel-X520-DA2 \| AVF \| +| | ... +| | [Arguments] | ${topology_type} | ${nic_model} | ${vf_driver} +| | ... | ${numvfs}=${1} +| | ... +| | Set variables in 2-node circular topology with DUT interface model +| | ... | ${nic_model} +| | Run Keyword If | '${vf_driver}' == 'AVF' +| | ... | Configure AVF interfaces on all DUTs | numvfs=${numvfs} +| | ... | topology_type=${topology_type} +| | Initialize traffic generator | ${tg} | ${tg_if1} | ${tg_if2} +| | ... | ${dut1} | ${dut1_if1_vf0} | ${dut1} | ${dut1_if2_vf0} +| | ... | ${topology_type} + +| Set up SRIOV 3-node performance topology with DUT's NIC model +| | [Documentation] +| | ... | Suite preparation phase that sets default startup configuration of +| | ... | VPP on all DUTs. Updates interfaces on all nodes and sets global +| | ... | variables used in test cases based on interface model provided as an +| | ... | argument. Initializes traffic generator. +| | ... | It configures PCI device with VFs on all DUTs. +| | ... +| | ... | *Arguments:* +| | ... | - topology_type - Topology type. Type: string +| | ... | - nic_model - Interface model. Type: string +| | ... | - vf_driver - Virtual function driver. Type: string +| | ... | - numvfs - Number of VFs. Type: integer +| | ... +| | ... | *Example:* +| | ... +| | ... | \| Set up SRIOV 3-node performance topology with DUT's NIC model \ +| | ... | \| L2 \| Intel-X520-DA2 \| AVF \| +| | ... +| | [Arguments] | ${topology_type} | ${nic_model} | ${vf_driver} +| | ... | ${numvfs}=${1} +| | ... +| | Set variables in 3-node circular topology with DUT interface model +| | ... | ${nic_model} +| | Run Keyword If | '${vf_driver}' == 'AVF' +| | ... | Configure AVF interfaces on all DUTs | numvfs=${numvfs} +| | ... | topology_type=${topology_type} +| | Initialize traffic generator | ${tg} | ${tg_if1} | ${tg_if2} +| | ... | ${dut1} | ${dut1_if1_vf0} | ${dut2} | ${dut2_if2_vf0} +| | ... | ${topology_type} + | Set up IPSec performance test suite | | [Documentation] | | ... | Suite preparation phase that sets default startup configuration of @@ -476,7 +477,9 @@ | | Acquire all 'VNF' containers | | Create all 'VNF' containers | | Configure VPP in all 'VNF' containers +| | Stop VPP service on all DUTs | ${nodes} | | Install VPP in all 'VNF' containers +| | Start VPP service on all DUTs | ${nodes} | Set up performance test suite with MEMIF | | [Documentation] @@ -499,6 +502,13 @@ | | Set Suite Variable | @{plugins_to_enable} | | Append To List | ${plugins_to_enable} | acl_plugin.so +| Set up performance test suite with AVF driver +| | [Documentation] +| | ... | Append avf_plugin.so to the list of enabled plugins. +| | ... +| | Set Suite Variable | @{plugins_to_enable} +| | Append To List | ${plugins_to_enable} | avf_plugin.so + | Set up performance test suite with Static SRv6 proxy | | [Documentation] | | ... | Append srv6as_plugin.so to the list of enabled plugins. @@ -660,18 +670,7 @@ | | Run Keyword If Test Failed | | ... | Traffic should pass with no loss | ${perf_trial_duration} | ${rate} | | ... | ${framesize} | ${topology_type} | fail_on_loss=${False} - -| Tear down performance ndrchk test -| | [Documentation] | Common test teardown for ndrchk performance tests. -| | ... -| | Remove All Added Ports On All DUTs From Topology | ${nodes} -| | Show VAT History On All DUTs | ${nodes} - -| Tear down performance pdrchk test -| | [Documentation] | Common test teardown for pdrchk performance tests. -| | ... -| | Remove All Added Ports On All DUTs From Topology | ${nodes} -| | Show VAT History On All DUTs | ${nodes} +| | Show IP FIB On All DUTs | Tear down performance mrr test | | [Documentation] | Common test teardown for max-received-rate performance @@ -679,6 +678,7 @@ | | ... | | Remove All Added Ports On All DUTs From Topology | ${nodes} | | Show VAT History On All DUTs | ${nodes} +| | Show IP FIB On All DUTs | Tear down performance test with wrk | | [Documentation] | Common test teardown for ndrdisc and pdrdisc performance \