aboutsummaryrefslogtreecommitdiffstats
path: root/resources/libraries/robot/shared/test_teardown.robot
blob: e30aa9f41e856fbe318feb89db93bc7cecbf404d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
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