From 6871d4e7f6ed43ce0bb003cb08e88b2581a474eb Mon Sep 17 00:00:00 2001 From: Peter Mikus Date: Tue, 18 Jun 2019 20:31:48 +0000 Subject: Align suite/test teardown/setup + Phase I - aligning FUNC/PERF Change-Id: I46b1e43687ddb29f5ed3c6335fe1baf21ec02822 Signed-off-by: Peter Mikus --- .../libraries/robot/shared/test_teardown.robot | 127 +++++++++++++++++++++ 1 file changed, 127 insertions(+) create mode 100644 resources/libraries/robot/shared/test_teardown.robot (limited to 'resources/libraries/robot/shared/test_teardown.robot') diff --git a/resources/libraries/robot/shared/test_teardown.robot b/resources/libraries/robot/shared/test_teardown.robot new file mode 100644 index 0000000000..e30aa9f41e --- /dev/null +++ b/resources/libraries/robot/shared/test_teardown.robot @@ -0,0 +1,127 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Keywords used in test teardowns.""" + +*** Settings *** +| Documentation | Test teardown keywords. + +*** Keywords *** +| Tear down test +| | [Documentation] +| | ... | Common test teardown for tests. +| | ... +| | ... | *Arguments:* +| | ... | - ${actions} - Additional teardown action. Type: list +| | ... +| | [Arguments] | @{actions} +| | ... +| | Remove All Added Ports On All DUTs From Topology | ${nodes} +| | Show PAPI History On All DUTs | ${nodes} +| | Get Core Files on All Nodes | ${nodes} +| | Verify VPP PID in Teardown +| | :FOR | ${action} | IN | @{actions} +| | | Run Keyword | Additional Test Tear Down Action For ${action} + +| Additional Test Tear Down Action For performance +| | [Documentation] +| | ... | Additional teardown for tests which uses performance measurement. +| | ... +| | Set Test Variable | ${pkt_trace} | ${True} +| | Run Keyword If Test Failed +| | ... | Send traffic at specified rate | ${perf_trial_duration} | 10000pps +| | ... | ${frame_size} | ${traffic_profile} + +| Additional Test Tear Down Action For packet_trace +| | [Documentation] +| | ... | Additional teardown for tests which uses packet trace. +| | ... +| | Show Packet Trace on All DUTs | ${nodes} + +| Additional Test Tear Down Action For container +| | [Documentation] +| | ... | Additional teardown for tests which uses containers. +| | ... +| | :FOR | ${container_group} | IN | @{container_groups} +| | | Destroy all '${container_group}' containers + +| Additional Test Tear Down Action For vhost +| | [Documentation] +| | ... | Additional teardown for tests which uses vhost(s) and VM(s). +| | ... +| | # TODO: Remove IF condition once devicetest is running KernelVM. +| | Show VPP vhost on all DUTs | ${nodes} +| | Run Keyword If | "PERFTEST" in @{TEST TAGS} | vnf_manager.Kill All VMs +| | Run Keyword If | "DEVICETEST" in @{TEST TAGS} | vm_node.Qemu Kill + +| Additional Test Tear Down Action For nat +| | [Documentation] +| | ... | Additional teardown for tests which uses NAT feature. +| | ... +| | ${duts}= | Get Matches | ${nodes} | DUT* +| | :FOR | ${dut} | IN | @{duts} +| | | Show NAT verbose | ${nodes['${dut}']} + +| Additional Test Tear Down Action For namespace +| | [Documentation] +| | ... | Additional teardown for tests which uses namespace. +| | ... +| | ${duts}= | Get Matches | ${nodes} | DUT* +| | :FOR | ${dut} | IN | @{duts} +| | | Clean Up Namespaces | ${nodes['${dut}']} + +| Additional Test Tear Down Action For linux_bridge +| | [Documentation] +| | ... | Additional teardown for tests which uses linux_bridge. +| | ... +| | ${duts}= | Get Matches | ${nodes} | DUT* +| | :FOR | ${dut} | IN | @{duts} +| | | Linux Del Bridge | ${nodes['${dut}']} | ${bid_TAP} + +| Additional Test Tear Down Action For acl +| | [Documentation] +| | ... | Additional teardown for tests which uses ACL feature. +| | ... +| | Run Keyword If Test Failed +| | ... | Vpp Log Plugin Acl Settings | ${dut1} +| | Run Keyword If Test Failed | Run Keyword And Ignore Error +| | ... | Vpp Log Plugin Acl Interface Assignment | ${dut1} + +| Additional Test Tear Down Action For macipacl +| | [Documentation] +| | ... | Additional teardown for tests which uses MACIP ACL feature. +| | ... +| | Run Keyword If Test Failed | Run Keyword And Ignore Error +| | ... | Vpp Log Macip Acl Settings | ${dut1} +| | Run Keyword And Ignore Error +| | ... | Vpp Log Macip Acl Interface Assignment | ${dut1} + +| Additional Test Tear Down Action For srv6 +| | [Documentation] +| | ... | Additional teardown for tests which uses SRv6. +| | ... +| | Run Keyword If Test Failed +| | ... | Show SR Policies on all DUTs | ${nodes} +| | Run Keyword If Test Failed +| | ... | Show SR Steering Policies on all DUTs | ${nodes} +| | Run Keyword If Test Failed | Show SR LocalSIDs on all DUTs | ${nodes} + +| Additional Test Tear Down Action For ligato +| | [Documentation] +| | ... | Additional teardown for performance tests with Ligato. +| | ... +| | Run Keyword If Test Failed +| | ... | Get Kubernetes logs on all DUTs | ${nodes} | csit +| | Run Keyword If Test Failed +| | ... | Describe Kubernetes resource on all DUTs | ${nodes} | csit +| | Delete Kubernetes resource on all DUTs | ${nodes} | csit -- cgit 1.2.3-korg