aboutsummaryrefslogtreecommitdiffstats
path: root/resources/libraries/robot/default.robot
diff options
context:
space:
mode:
authorTibor Frank <tifrank@cisco.com>2016-10-27 15:33:42 +0200
committerTibor Frank <tifrank@cisco.com>2016-11-07 17:07:12 +0100
commit440370de3fc66d5bb9754a55fa78ccce8c598f5d (patch)
treee5c9b88a6f854d9fc55d5e36e2897809b8fb1300 /resources/libraries/robot/default.robot
parentefe5c162d2311ed470285a6f84af7c0f3a0c109c (diff)
CSIT-465: Common test setup and teardown
This test setup and teardown is aimed to be used with all functional tests. It does not include functionality to manipulate VMs (qemu). Test setup includes: - Setup all DUTs before test - Save VPP PIDs - Setup all TGs before traffic script - Update All Interface Data On All Nodes Test teardown includes: - Show Packet Trace on All DUTs - Show vpp trace dump on all DUTs - Vpp Show Errors On All DUTs - Check VPP PID in Teardown Change-Id: Ifee0bd58b7865442c5b510852908fd8363e3c543 Signed-off-by: Tibor Frank <tifrank@cisco.com>
Diffstat (limited to 'resources/libraries/robot/default.robot')
-rw-r--r--resources/libraries/robot/default.robot38
1 files changed, 38 insertions, 0 deletions
diff --git a/resources/libraries/robot/default.robot b/resources/libraries/robot/default.robot
index 8602f705ef..dca7d53373 100644
--- a/resources/libraries/robot/default.robot
+++ b/resources/libraries/robot/default.robot
@@ -173,3 +173,41 @@
| | :FOR | ${dut} | IN | @{duts}
| | | Apply Config | ${nodes['${dut}']}
| | Update All Interface Data On All Nodes | ${nodes} | skip_tg=${TRUE}
+
+| Save VPP PIDs
+| | [Documentation] | Get PIDs of VPP processes from all DUTs in topology and
+| | ... | set it as a test variable. The PIDs are stored as dictionary items
+| | ... | where the key is the host and the value is the PID.
+| | ...
+| | ${setup_vpp_pids}= | Get VPP PIDs | ${nodes}
+| | Set Test Variable | ${setup_vpp_pids}
+
+| Check VPP PID in Teardown
+| | [Documentation] | Check if the VPP PIDs on all DUTs are the same at the end
+| | ... | of test as they were at the begining. If they are not, only a message
+| | ... | is printed on console and to log. The test will not fail.
+| | ...
+| | ${teardown_vpp_pids}= | Get VPP PIDs | ${nodes}
+| | ${err_msg}= | Catenate | \nThe VPP PIDs are not equal!\nTest Setup VPP PIDs:
+| | ... | ${setup_vpp_pids}\nTest Teardown VPP PIDs: ${teardown_vpp_pids}
+| | ${rc} | ${msg}= | Run keyword and ignore error
+| | ... | Dictionaries Should Be Equal
+| | ... | ${setup_vpp_pids} | ${teardown_vpp_pids}
+| | Run Keyword And Return If | '${rc}'=='FAIL' | Log | ${err_msg}
+| | ... | console=yes | level=WARN
+
+| Func Test Setup
+| | [Documentation] | Common test setup for functional tests.
+| | ...
+| | Setup all DUTs before test
+| | Save VPP PIDs
+| | Setup all TGs before traffic script
+| | Update All Interface Data On All Nodes | ${nodes}
+
+| Func Test Teardown
+| | [Documentation] | Common test teardown for functional tests.
+| | ...
+| | Show Packet Trace on All DUTs | ${nodes}
+| | Show vpp trace dump on all DUTs
+| | Vpp Show Errors On All DUTs | ${nodes}
+| | Check VPP PID in Teardown