aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPeter Mikus <pmikus@cisco.com>2019-03-20 13:21:26 +0000
committerPeter Mikus <pmikus@cisco.com>2019-03-21 10:58:14 +0000
commitc8b5a89276f6c10a2d8ca9858f426a6089ac08e3 (patch)
tree1c22c7c6976d7e6a36bb4d31f53c80e64140dda4
parent42b6f3b341d23f43fd0459a755c4650a574cb3b6 (diff)
Convert functional tests to statefull QemuUtils
Change-Id: Ia1b9120c45733db64dc2dc8b03cff5ef5f167548 Signed-off-by: Peter Mikus <pmikus@cisco.com>
-rw-r--r--resources/libraries/robot/l2/l2_bridge_domain.robot20
-rw-r--r--resources/libraries/robot/shared/default.robot6
-rw-r--r--resources/libraries/robot/vm/qemu.robot27
-rw-r--r--tests/vpp/device/vm_vhost/ip4/eth2p-ethip4-ip4base-eth-2vhost-1vm-dev.robot2
-rw-r--r--tests/vpp/device/vm_vhost/ip6/eth2p-ethip6-ip6base-eth-2vhost-1vm-dev.robot2
-rw-r--r--tests/vpp/device/vm_vhost/l2bd/eth2p-eth-l2bdbasemaclrn-eth-2vhost-1vm-dev.robot2
-rw-r--r--tests/vpp/device/vm_vhost/l2xc/eth2p-eth-l2xcbase-eth-2vhost-1vm-dev.robot2
-rw-r--r--tests/vpp/func/crypto/default/eth2p-ethip4ipsectptlispgpe-ip4base-func.robot2
-rw-r--r--tests/vpp/func/crypto/default/eth2p-ethip4ipsectptlispgpe-ip6base-func.robot2
-rw-r--r--tests/vpp/func/crypto/default/eth2p-ethip4ipsectptlispgpe-ip6basevrf-func.robot3
-rw-r--r--tests/vpp/func/crypto/default/eth2p-ethip6ipsectptlispgpe-ip4base-func.robot3
-rw-r--r--tests/vpp/func/crypto/default/eth2p-ethip6ipsectptlispgpe-ip6base-func.robot3
-rw-r--r--tests/vpp/func/vm_vhost/ip4/eth2p-ethip4-ip4base-eth-2vhost-1vm.robot2
-rw-r--r--tests/vpp/func/vm_vhost/l2bd/eth2p-dot1q-l2bdbasemaclrn-eth-2vhost-1vm-func.robot2
-rw-r--r--tests/vpp/func/vm_vhost/l2bd/eth2p-eth-l2bdbasemaclrn-eth-2vhost-1vm-func.robot2
-rw-r--r--tests/vpp/func/vm_vhost/l2bd/eth2p-eth-l2bdbasemacstc-eth-2vhost-1vm-func.robot2
-rw-r--r--tests/vpp/func/vm_vhost/l2bd/eth2p-ethip4-l2bdbase-vhost-client-reconnect-2vm-func.robot17
-rw-r--r--tests/vpp/func/vm_vhost/l2bd/eth2p-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-func.robot4
-rw-r--r--tests/vpp/func/vm_vhost/l2bd/eth2p-ethip6vxlan-l2bdbasemaclrn-eth-2vhost-1vm-func.robot4
-rw-r--r--tests/vpp/func/vm_vhost/l2xc/eth2p-eth-l2xcbase-eth-2vhost-1vm-func.robot4
20 files changed, 33 insertions, 78 deletions
diff --git a/resources/libraries/robot/l2/l2_bridge_domain.robot b/resources/libraries/robot/l2/l2_bridge_domain.robot
index 3d6f48328b..b69d449a10 100644
--- a/resources/libraries/robot/l2/l2_bridge_domain.robot
+++ b/resources/libraries/robot/l2/l2_bridge_domain.robot
@@ -222,22 +222,12 @@
| | ... | \| Configure VM for vhost L2BD forwarding \| ${nodes['DUT2']} \
| | ... | \| /tmp/sock1 \| /tmp/sock2 \| qemu_instance_2 \|
| | [Arguments] | ${dut_node} | ${sock1} | ${sock2} | ${qemu_name}=vm_node
-| | Run Keyword Unless | "${qemu_name}" == "vm_node" | Import Library
-| | ... | resources.libraries.python.QemuUtils | WITH NAME | ${qemu_name}
+| | Import Library | resources.libraries.python.QemuUtils | node=${dut_node} |
+| | ... | WITH NAME | ${qemu_name}
| | Set Test Variable | ${${qemu_name}} | ${None}
-| | ${qemu_set_node}= | Run Keyword If | "${qemu_name}" == "vm_node"
-| | | ... | Set Variable | Qemu Set Node
-| | ... | ELSE | Replace Variables | ${qemu_name}.Qemu Set Node
-| | Run keyword | ${qemu_set_node} | ${dut_node}
-| | ${qemu_add_vhost}= | Run Keyword If | "${qemu_name}" == "vm_node"
-| | | ... | Set Variable | Qemu Add Vhost User If
-| | ... | ELSE | Replace Variables | ${qemu_name}.Qemu Add Vhost User If
-| | Run keyword | ${qemu_add_vhost} | ${sock1}
-| | Run keyword | ${qemu_add_vhost} | ${sock2}
-| | ${qemu_start}= | Run Keyword If | "${qemu_name}" == "vm_node"
-| | | ... | Set Variable | Qemu Start
-| | ... | ELSE | Replace Variables | ${qemu_name}.Qemu Start
-| | ${vm}= | Run keyword | ${qemu_start}
+| | Run Keyword | ${qemu_name}.Qemu Add Vhost User If | ${sock1}
+| | Run Keyword | ${qemu_name}.Qemu Add Vhost User If | ${sock2}
+| | ${vm}= | Run keyword | ${qemu_name}.Qemu Start
| | ${br}= | Set Variable | br0
| | ${vhost1}= | Get Vhost User If Name By Sock | ${vm} | ${sock1}
| | ${vhost2}= | Get Vhost User If Name By Sock | ${vm} | ${sock2}
diff --git a/resources/libraries/robot/shared/default.robot b/resources/libraries/robot/shared/default.robot
index 6d99b959d3..954f88109a 100644
--- a/resources/libraries/robot/shared/default.robot
+++ b/resources/libraries/robot/shared/default.robot
@@ -523,7 +523,7 @@
| | Show Vpp Settings | ${nodes['DUT1']}
| | Show Vpp Settings | ${nodes['DUT2']}
| | Vpp Show Errors On All DUTs | ${nodes}
-| | Stop and clear QEMU | ${nodes['DUT1']}
+| | Tear down QEMU
| | Verify VPP PID in Teardown
| Set up TAP functional test
@@ -608,8 +608,8 @@
| | [Arguments] | ${dut1_node} | ${dut2_node}
| | ...
| | Tear down functional test
-| | Tear down QEMU | ${dut1_node} | qemu_node1
-| | Tear down QEMU | ${dut2_node} | qemu_node2
+| | Tear down QEMU | qemu_node1
+| | Tear down QEMU | qemu_node2
| Tear down functional test with container
| | [Documentation]
diff --git a/resources/libraries/robot/vm/qemu.robot b/resources/libraries/robot/vm/qemu.robot
index 528b7fbe8c..765a6cf398 100644
--- a/resources/libraries/robot/vm/qemu.robot
+++ b/resources/libraries/robot/vm/qemu.robot
@@ -12,7 +12,6 @@
# limitations under the License.
*** Settings ***
| Library | resources.libraries.python.IPUtil
-| Library | resources.libraries.python.QemuUtils
*** Keywords ***
| Configure QEMU vhost and run it
@@ -44,7 +43,7 @@
| | ...
| | [Arguments] | ${dut_node} | ${sock1} | ${sock2} | ${sock3} | ${sock4}
| | ... | ${ip1} | ${ip2} | ${ip3} | ${ip4} | ${prefix_length}
-| | ... | ${qemu_name} | ${mac_ID}=${None}
+| | ... | ${qemu_name}=vm_node | ${mac_ID}=${None}
| | ...
| | Import Library | resources.libraries.python.QemuUtils \
| | ... | node=${dut_node} | WITH NAME | ${qemu_name}
@@ -73,33 +72,15 @@
| Tear down QEMU
| | [Documentation]
-| | ... | Stop specific qemu instance running on ${dut_node}.
+| | ... | Stop specific qemu instance running on DUT.
| | ...
| | ... | *Arguments:*
-| | ... | - dut_node - Node where to clean qemu. Type: dict
| | ... | - qemu_name - Qemu instance by name. Type: string
| | ...
| | ... | *Example:*
| | ...
-| | ... | \| Tear down QEMU \| ${node['DUT1']} \| qemu_node_1 \|
+| | ... | \| Tear down QEMU \| qemu_node_1 \|
| | ...
-| | [Arguments] | ${dut_node} | ${qemu_name}
+| | [Arguments] | ${qemu_name}=vm_node
| | ...
-| | Run Keyword | ${qemu_name}.Qemu Set Node | ${dut_node}
| | Run Keyword | ${qemu_name}.Qemu Kill
-
-| Stop and clear QEMU
-| | [Documentation]
-| | ... | Stop QEMU, clear used sockets running on ${dut}.
-| | ...
-| | ... | *Arguments:*
-| | ... | - dut_node - Node where to clean qemu. Type: dict
-| | ...
-| | ... | *Example:*
-| | ...
-| | ... | \| Tear down QEMU \| ${node['DUT1']} \|
-| | ...
-| | [Arguments] | ${dut}
-| | ...
-| | Qemu Set Node | ${dut}
-| | Qemu Kill
diff --git a/tests/vpp/device/vm_vhost/ip4/eth2p-ethip4-ip4base-eth-2vhost-1vm-dev.robot b/tests/vpp/device/vm_vhost/ip4/eth2p-ethip4-ip4base-eth-2vhost-1vm-dev.robot
index 50aa28215b..e97e7919b1 100644
--- a/tests/vpp/device/vm_vhost/ip4/eth2p-ethip4-ip4base-eth-2vhost-1vm-dev.robot
+++ b/tests/vpp/device/vm_vhost/ip4/eth2p-ethip4-ip4base-eth-2vhost-1vm-dev.robot
@@ -32,7 +32,7 @@
| Test Setup | Set up VPP device test
| ...
| Test Teardown | Run Keywords
-| ... | Stop and clear QEMU | ${dut_node}
+| ... | Tear down QEMU
| ... | AND | Tear down VPP device test
| ...
| Documentation | *IPv4 routing test cases with vhost user interface*
diff --git a/tests/vpp/device/vm_vhost/ip6/eth2p-ethip6-ip6base-eth-2vhost-1vm-dev.robot b/tests/vpp/device/vm_vhost/ip6/eth2p-ethip6-ip6base-eth-2vhost-1vm-dev.robot
index 91808fed7e..48070e933b 100644
--- a/tests/vpp/device/vm_vhost/ip6/eth2p-ethip6-ip6base-eth-2vhost-1vm-dev.robot
+++ b/tests/vpp/device/vm_vhost/ip6/eth2p-ethip6-ip6base-eth-2vhost-1vm-dev.robot
@@ -32,7 +32,7 @@
| Test Setup | Set up VPP device test
| ...
| Test Teardown | Run Keywords
-| ... | Stop and clear QEMU | ${dut_node}
+| ... | Tear down QEMU
| ... | AND | Tear down VPP device test
| ...
| Documentation | *IPv4 routing test cases with vhost user interface*
diff --git a/tests/vpp/device/vm_vhost/l2bd/eth2p-eth-l2bdbasemaclrn-eth-2vhost-1vm-dev.robot b/tests/vpp/device/vm_vhost/l2bd/eth2p-eth-l2bdbasemaclrn-eth-2vhost-1vm-dev.robot
index e124675086..b2700042f5 100644
--- a/tests/vpp/device/vm_vhost/l2bd/eth2p-eth-l2bdbasemaclrn-eth-2vhost-1vm-dev.robot
+++ b/tests/vpp/device/vm_vhost/l2bd/eth2p-eth-l2bdbasemaclrn-eth-2vhost-1vm-dev.robot
@@ -23,7 +23,7 @@
| Test Setup | Set up VPP device test
| ...
| Test Teardown | Run Keywords
-| ... | Stop and clear QEMU | ${dut_node}
+| ... | Tear down QEMU
| ... | AND | Tear down VPP device test
| ...
| Documentation | *L2 bridge-domain test cases with vhost user interface*
diff --git a/tests/vpp/device/vm_vhost/l2xc/eth2p-eth-l2xcbase-eth-2vhost-1vm-dev.robot b/tests/vpp/device/vm_vhost/l2xc/eth2p-eth-l2xcbase-eth-2vhost-1vm-dev.robot
index 91b8d58e75..b182b0198f 100644
--- a/tests/vpp/device/vm_vhost/l2xc/eth2p-eth-l2xcbase-eth-2vhost-1vm-dev.robot
+++ b/tests/vpp/device/vm_vhost/l2xc/eth2p-eth-l2xcbase-eth-2vhost-1vm-dev.robot
@@ -27,7 +27,7 @@
| Test Setup | Set up VPP device test
| ...
| Test Teardown | Run Keywords
-| ... | Stop and clear QEMU | ${dut_node}
+| ... | Tear down QEMU
| ... | AND | Tear down VPP device test
| ...
| Documentation | *L2 cross-connect test cases with vhost user interface*
diff --git a/tests/vpp/func/crypto/default/eth2p-ethip4ipsectptlispgpe-ip4base-func.robot b/tests/vpp/func/crypto/default/eth2p-ethip4ipsectptlispgpe-ip4base-func.robot
index 15c10d40fc..0f79d15eb4 100644
--- a/tests/vpp/func/crypto/default/eth2p-ethip4ipsectptlispgpe-ip4base-func.robot
+++ b/tests/vpp/func/crypto/default/eth2p-ethip4ipsectptlispgpe-ip4base-func.robot
@@ -16,8 +16,6 @@
| Library | resources.libraries.python.NodePath
| Library | resources.libraries.python.Trace
| Library | resources.libraries.python.LispUtil
-| Library | resources.libraries.python.VhostUser
-| Library | resources.libraries.python.QemuUtils
| Library | resources.libraries.python.VPPUtil
| Library | resources.libraries.python.IPsecUtil
| Resource | resources/libraries/robot/shared/traffic.robot
diff --git a/tests/vpp/func/crypto/default/eth2p-ethip4ipsectptlispgpe-ip6base-func.robot b/tests/vpp/func/crypto/default/eth2p-ethip4ipsectptlispgpe-ip6base-func.robot
index 550c9405cc..29d8fc7c2f 100644
--- a/tests/vpp/func/crypto/default/eth2p-ethip4ipsectptlispgpe-ip6base-func.robot
+++ b/tests/vpp/func/crypto/default/eth2p-ethip4ipsectptlispgpe-ip6base-func.robot
@@ -21,8 +21,6 @@
| Library | resources.libraries.python.IPsecUtil
| Library | resources.libraries.python.VatJsonUtil
| Library | resources.libraries.python.IPv6Setup
-| Library | resources.libraries.python.VhostUser
-| Library | resources.libraries.python.QemuUtils
| Library | resources.libraries.python.VPPUtil
| Library | String
| Resource | resources/libraries/robot/shared/traffic.robot
diff --git a/tests/vpp/func/crypto/default/eth2p-ethip4ipsectptlispgpe-ip6basevrf-func.robot b/tests/vpp/func/crypto/default/eth2p-ethip4ipsectptlispgpe-ip6basevrf-func.robot
index 8c131181f3..718ac04383 100644
--- a/tests/vpp/func/crypto/default/eth2p-ethip4ipsectptlispgpe-ip6basevrf-func.robot
+++ b/tests/vpp/func/crypto/default/eth2p-ethip4ipsectptlispgpe-ip6basevrf-func.robot
@@ -21,8 +21,6 @@
| Library | resources.libraries.python.IPsecUtil
| Library | resources.libraries.python.VatJsonUtil
| Library | resources.libraries.python.IPv6Setup
-| Library | resources.libraries.python.VhostUser
-| Library | resources.libraries.python.QemuUtils
| Library | resources.libraries.python.VPPUtil
| Library | String
| Resource | resources/libraries/robot/shared/traffic.robot
@@ -31,7 +29,6 @@
| Resource | resources/libraries/robot/shared/testing_path.robot
| Resource | resources/libraries/robot/ip/ip6.robot
| Resource | resources/libraries/robot/crypto/ipsec.robot
-| Resource | resources/libraries/robot/vm/qemu.robot
| Resource | resources/libraries/robot/overlay/lispgpe.robot
| Resource | resources/libraries/robot/l2/l2_bridge_domain.robot
# Import configuration and test data:
diff --git a/tests/vpp/func/crypto/default/eth2p-ethip6ipsectptlispgpe-ip4base-func.robot b/tests/vpp/func/crypto/default/eth2p-ethip6ipsectptlispgpe-ip4base-func.robot
index f3bc2e28b1..725db216e4 100644
--- a/tests/vpp/func/crypto/default/eth2p-ethip6ipsectptlispgpe-ip4base-func.robot
+++ b/tests/vpp/func/crypto/default/eth2p-ethip6ipsectptlispgpe-ip4base-func.robot
@@ -21,8 +21,6 @@
| Library | resources.libraries.python.IPsecUtil
| Library | resources.libraries.python.VatJsonUtil
| Library | resources.libraries.python.IPv6Setup
-| Library | resources.libraries.python.VhostUser
-| Library | resources.libraries.python.QemuUtils
| Library | String
| Resource | resources/libraries/robot/shared/traffic.robot
| Resource | resources/libraries/robot/shared/default.robot
@@ -30,7 +28,6 @@
| Resource | resources/libraries/robot/shared/testing_path.robot
| Resource | resources/libraries/robot/ip/ip6.robot
| Resource | resources/libraries/robot/crypto/ipsec.robot
-| Resource | resources/libraries/robot/vm/qemu.robot
| Resource | resources/libraries/robot/overlay/lispgpe.robot
| Resource | resources/libraries/robot/l2/l2_bridge_domain.robot
# Import configuration and test data:
diff --git a/tests/vpp/func/crypto/default/eth2p-ethip6ipsectptlispgpe-ip6base-func.robot b/tests/vpp/func/crypto/default/eth2p-ethip6ipsectptlispgpe-ip6base-func.robot
index ca81b425c8..b0454dd717 100644
--- a/tests/vpp/func/crypto/default/eth2p-ethip6ipsectptlispgpe-ip6base-func.robot
+++ b/tests/vpp/func/crypto/default/eth2p-ethip6ipsectptlispgpe-ip6base-func.robot
@@ -22,8 +22,6 @@
| Library | resources.libraries.python.IPsecUtil
| Library | resources.libraries.python.VatJsonUtil
| Library | resources.libraries.python.IPv6Setup
-| Library | resources.libraries.python.VhostUser
-| Library | resources.libraries.python.QemuUtils
| Library | String
| Resource | resources/libraries/robot/shared/traffic.robot
| Resource | resources/libraries/robot/shared/default.robot
@@ -31,7 +29,6 @@
| Resource | resources/libraries/robot/shared/testing_path.robot
| Resource | resources/libraries/robot/ip/ip6.robot
| Resource | resources/libraries/robot/crypto/ipsec.robot
-| Resource | resources/libraries/robot/vm/qemu.robot
| Resource | resources/libraries/robot/overlay/lispgpe.robot
| Resource | resources/libraries/robot/l2/l2_bridge_domain.robot
# Import configuration and test data:
diff --git a/tests/vpp/func/vm_vhost/ip4/eth2p-ethip4-ip4base-eth-2vhost-1vm.robot b/tests/vpp/func/vm_vhost/ip4/eth2p-ethip4-ip4base-eth-2vhost-1vm.robot
index a30d7cd600..057b5b9de0 100644
--- a/tests/vpp/func/vm_vhost/ip4/eth2p-ethip4-ip4base-eth-2vhost-1vm.robot
+++ b/tests/vpp/func/vm_vhost/ip4/eth2p-ethip4-ip4base-eth-2vhost-1vm.robot
@@ -59,7 +59,7 @@
| | ... | Both have IP addresses from same network. On VM is set bridge to pass
| | ... | packet from a one vhost user interface to another one.
| | [Teardown] | Run Keywords
-| | ... | Stop and clear QEMU | ${dut_node} | AND
+| | ... | Tear down QEMU | AND
| | ... | Tear down functional test
| |
| | Given Configure path in 2-node circular topology
diff --git a/tests/vpp/func/vm_vhost/l2bd/eth2p-dot1q-l2bdbasemaclrn-eth-2vhost-1vm-func.robot b/tests/vpp/func/vm_vhost/l2bd/eth2p-dot1q-l2bdbasemaclrn-eth-2vhost-1vm-func.robot
index 7895fa13a8..071aa7902c 100644
--- a/tests/vpp/func/vm_vhost/l2bd/eth2p-dot1q-l2bdbasemaclrn-eth-2vhost-1vm-func.robot
+++ b/tests/vpp/func/vm_vhost/l2bd/eth2p-dot1q-l2bdbasemaclrn-eth-2vhost-1vm-func.robot
@@ -21,7 +21,7 @@
| Force Tags | 3_NODE_DOUBLE_LINK_TOPO | HW_ENV | VM_ENV | VPP_VM_ENV
| Test Setup | Set up functional test
| Test Teardown | Run Keywords | Tear down functional test
-| ... | AND | Stop and clear QEMU | ${dut_node}
+| ... | AND | Tear down QEMU
| Documentation | *L2 bridge domain with VLAN tag over VM test cases*
| ...
| ... | *[Top] Network Topologies:* TG=DUT 2-node circular topology
diff --git a/tests/vpp/func/vm_vhost/l2bd/eth2p-eth-l2bdbasemaclrn-eth-2vhost-1vm-func.robot b/tests/vpp/func/vm_vhost/l2bd/eth2p-eth-l2bdbasemaclrn-eth-2vhost-1vm-func.robot
index 38195c35f1..b1626ae93b 100644
--- a/tests/vpp/func/vm_vhost/l2bd/eth2p-eth-l2bdbasemaclrn-eth-2vhost-1vm-func.robot
+++ b/tests/vpp/func/vm_vhost/l2bd/eth2p-eth-l2bdbasemaclrn-eth-2vhost-1vm-func.robot
@@ -19,7 +19,7 @@
| Force Tags | 3_NODE_DOUBLE_LINK_TOPO | HW_ENV | VM_ENV | VPP_VM_ENV
| Test Setup | Set up functional test
| Test Teardown | Run Keywords | Tear down functional test
-| ... | AND | Stop and clear QEMU | ${dut_node}
+| ... | AND | Tear down QEMU
| Documentation | *L2 bridge-domain test cases*
| ...
| ... | *[Top] Network Topologies:* TG=DUT=VM 3-node topology with VM
diff --git a/tests/vpp/func/vm_vhost/l2bd/eth2p-eth-l2bdbasemacstc-eth-2vhost-1vm-func.robot b/tests/vpp/func/vm_vhost/l2bd/eth2p-eth-l2bdbasemacstc-eth-2vhost-1vm-func.robot
index 5242938848..5b6b73aba3 100644
--- a/tests/vpp/func/vm_vhost/l2bd/eth2p-eth-l2bdbasemacstc-eth-2vhost-1vm-func.robot
+++ b/tests/vpp/func/vm_vhost/l2bd/eth2p-eth-l2bdbasemacstc-eth-2vhost-1vm-func.robot
@@ -19,7 +19,7 @@
| Force Tags | 3_NODE_DOUBLE_LINK_TOPO | HW_ENV | VM_ENV | VPP_VM_ENV
| Test Setup | Set up functional test
| Test Teardown | Run Keywords | Tear down functional test
-| ... | AND | Stop and clear QEMU | ${dut_node}
+| ... | AND | Tear down QEMU
| Documentation | *L2 bridge-domain test cases*
| ...
| ... | *[Top] Network Topologies:* TG=DUT=VM 3-node topology with VM
diff --git a/tests/vpp/func/vm_vhost/l2bd/eth2p-ethip4-l2bdbase-vhost-client-reconnect-2vm-func.robot b/tests/vpp/func/vm_vhost/l2bd/eth2p-ethip4-l2bdbase-vhost-client-reconnect-2vm-func.robot
index 6a65d04d0d..ec2a82b358 100644
--- a/tests/vpp/func/vm_vhost/l2bd/eth2p-ethip4-l2bdbase-vhost-client-reconnect-2vm-func.robot
+++ b/tests/vpp/func/vm_vhost/l2bd/eth2p-ethip4-l2bdbase-vhost-client-reconnect-2vm-func.robot
@@ -20,7 +20,8 @@
| Force Tags | HW_ENV | VM_ENV | 3_NODE_DOUBLE_LINK_TOPO | VPP_VM_ENV
| Test Setup | Set up functional test
| Test Teardown | Run Keywords
-| ... | resources.libraries.python.QemuUtils.Qemu Kill All | ${dut_node} | AND
+| ... | qemu-1.Qemu Kill | AND
+| ... | qemu-2.Qemu Kill | AND
| ... | Tear down functional test
| Documentation | *Vhost-User Interface Traffic Tests*
| ... | *[Top] Network Topologies:* TG=DUT1 2-node topology with two links
@@ -200,15 +201,11 @@
*** Keywords ***
| Configure QEMU vhost and run it VM
| | [Arguments] | ${dut_node} | ${sock1} | ${sock2} | ${qemu_id}
-| | Import Library | resources.libraries.python.QemuUtils | qemu_id=${qemu_id}
-| | ... | WITH NAME | qemu-${qemu_id}
-| | ${q_add_vhost}= | Replace Variables | qemu-${qemu_id}.Qemu Add Vhost User If
-| | ${q_set_node}= | Replace Variables | qemu-${qemu_id}.Qemu Set Node
-| | ${q_start}= | Replace Variables | qemu-${qemu_id}.Qemu Start
-| | Run keyword | ${q_set_node} | ${dut_node}
-| | Run keyword | ${q_add_vhost} | ${sock1}
-| | Run keyword | ${q_add_vhost} | ${sock2}
-| | ${vm}= | Run keyword | ${q_start}
+| | Import Library | resources.libraries.python.QemuUtils | node=${dut_node} |
+| | ... | qemu_id=${qemu_id} | WITH NAME | qemu-${qemu_id}
+| | Run keyword | qemu-${qemu_id}.Qemu Add Vhost User If | ${sock1}
+| | Run keyword | qemu-${qemu_id}.Qemu Add Vhost User If | ${sock2}
+| | ${vm}= | Run keyword | qemu-${qemu_id}.Qemu Start
| | ${vhost1}= | Get Vhost User If Name By Sock | ${vm} | ${sock1}
| | ${vhost2}= | Get Vhost User If Name By Sock | ${vm} | ${sock2}
| | Linux Add Bridge | ${vm} | br0 | ${vhost1} | ${vhost2}
diff --git a/tests/vpp/func/vm_vhost/l2bd/eth2p-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-func.robot b/tests/vpp/func/vm_vhost/l2bd/eth2p-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-func.robot
index 27691fe80c..73b6e4156a 100644
--- a/tests/vpp/func/vm_vhost/l2bd/eth2p-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-func.robot
+++ b/tests/vpp/func/vm_vhost/l2bd/eth2p-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-func.robot
@@ -20,8 +20,8 @@
| Force Tags | 3_NODE_SINGLE_LINK_TOPO | VM_ENV | HW_ENV | VPP_VM_ENV
| Test Setup | Set up functional test
| Test Teardown | Run Keywords | Tear down functional test
-| ... | AND | Run keyword | Tear down QEMU | ${dut1_node} | ${qemu1}
-| ... | AND | Run keyword | Tear down QEMU | ${dut2_node} | ${qemu2}
+| ... | AND | Run keyword | Tear down QEMU | ${qemu1}
+| ... | AND | Run keyword | Tear down QEMU | ${qemu2}
| Documentation | *L2BD with VM combined with VXLAN test cases - IPv4*
| ...
| ... | *[Top] Network topologies:* TG-DUT1-DUT2-TG 3-node circular topology
diff --git a/tests/vpp/func/vm_vhost/l2bd/eth2p-ethip6vxlan-l2bdbasemaclrn-eth-2vhost-1vm-func.robot b/tests/vpp/func/vm_vhost/l2bd/eth2p-ethip6vxlan-l2bdbasemaclrn-eth-2vhost-1vm-func.robot
index c7b905d668..f99994a78b 100644
--- a/tests/vpp/func/vm_vhost/l2bd/eth2p-ethip6vxlan-l2bdbasemaclrn-eth-2vhost-1vm-func.robot
+++ b/tests/vpp/func/vm_vhost/l2bd/eth2p-ethip6vxlan-l2bdbasemaclrn-eth-2vhost-1vm-func.robot
@@ -21,8 +21,8 @@
| Force Tags | 3_NODE_SINGLE_LINK_TOPO | VM_ENV | HW_ENV
| Test Setup | Set up functional test
| Test Teardown | Run Keywords | Tear down functional test
-| ... | AND | Run keyword | Tear down QEMU | ${dut1_node} | ${qemu1}
-| ... | AND | Run keyword | Tear down QEMU | ${dut2_node} | ${qemu2}
+| ... | AND | Run keyword | Tear down QEMU | ${qemu1}
+| ... | AND | Run keyword | Tear down QEMU | ${qemu2}
| Documentation | *L2BD with VM combined with VXLAN test cases - IPv6*
| ...
| ... | *[Top] Network topologies:* TG-DUT1-DUT2-TG 3-node circular topology
diff --git a/tests/vpp/func/vm_vhost/l2xc/eth2p-eth-l2xcbase-eth-2vhost-1vm-func.robot b/tests/vpp/func/vm_vhost/l2xc/eth2p-eth-l2xcbase-eth-2vhost-1vm-func.robot
index bebdf711ff..2b46b392a4 100644
--- a/tests/vpp/func/vm_vhost/l2xc/eth2p-eth-l2xcbase-eth-2vhost-1vm-func.robot
+++ b/tests/vpp/func/vm_vhost/l2xc/eth2p-eth-l2xcbase-eth-2vhost-1vm-func.robot
@@ -51,7 +51,7 @@
| | ... | i/fs to be switched by DUT to and from VM; verify all packets
| | ... | are received. [Ref]
| | ...
-| | [Teardown] | Run Keywords | Stop and clear QEMU | ${dut_node}
+| | [Teardown] | Run Keywords | Tear down QEMU
| | ... | AND | Tear down functional test
| | ...
| | Given Configure path in 2-node circular topology
@@ -75,7 +75,7 @@
| | ... | be switched by DUT to and from VM; verify all packets are
| | ... | received. [Ref]
| | ...
-| | [Teardown] | Run Keywords | Stop and clear QEMU | ${dut_node}
+| | [Teardown] | Run Keywords | Tear down QEMU
| | ... | AND | Tear down functional test
| | ...
| | Given Configure path in 2-node circular topology