[dts] [PATCH V1] tests/pvp_diff_qemu_version: update code to support trex

lihong lihongx.ma at intel.com
Wed Aug 14 00:37:47 CEST 2019


Signed-off-by: lihong <lihongx.ma at intel.com>
---
 tests/TestSuite_pvp_diff_qemu_version.py | 21 +++++++++++++++++----
 1 file changed, 17 insertions(+), 4 deletions(-)

diff --git a/tests/TestSuite_pvp_diff_qemu_version.py b/tests/TestSuite_pvp_diff_qemu_version.py
index d238a90..d1952b5 100644
--- a/tests/TestSuite_pvp_diff_qemu_version.py
+++ b/tests/TestSuite_pvp_diff_qemu_version.py
@@ -45,6 +45,7 @@ from scapy.utils import wrpcap
 from test_case import TestCase
 from settings import HEADER_SIZE
 from virt_common import VM
+from pktgen import PacketGeneratorHelper
 
 
 class TestVhostPVPDiffQemuVersion(TestCase):
@@ -74,6 +75,13 @@ class TestVhostPVPDiffQemuVersion(TestCase):
         res = self.verify_qemu_version_config()
         self.verify(res is True, "The path of qemu version in config file not right")
 
+        self.out_path = '/tmp'
+        out = self.tester.send_expect('ls -d %s' % self.out_path, '# ')
+        if 'No such file or directory' in out:
+            self.tester.send_expect('mkdir -p %s' % self.out_path, '# ')
+        # create an instance to set stream field setting
+        self.pktgen_helper = PacketGeneratorHelper()
+
     def set_up(self):
         """
         Run before each test case.
@@ -221,14 +229,19 @@ class TestVhostPVPDiffQemuVersion(TestCase):
             payload = frame_size - HEADER_SIZE['eth'] - HEADER_SIZE['ip']
             flow = '[Ether(dst="%s")/Dot1Q(vlan=%s)/IP(src="%s",dst="%s")/("X"*%d)]' % (
                 self.virtio1_mac, vlan_id1, self.src1, self.dst1, payload)
-            self.tester.scapy_append('wrpcap("pvp_diff_qemu_version.pcap", %s)' % flow)
+            self.tester.scapy_append('wrpcap("%s/pvp_diff_qemu_version.pcap", %s)' % (
+                                self.out_path, flow))
             self.tester.scapy_execute()
 
             tgenInput = []
             port = self.tester.get_local_port(self.pf)
-            tgenInput.append((port, port, "pvp_diff_qemu_version.pcap"))
-            _, pps = self.tester.traffic_generator_throughput(
-                tgenInput, delay=30)
+            tgenInput.append((port, port, "%s/pvp_diff_qemu_version.pcap" % self.out_path))
+
+            self.tester.pktgen.clear_streams()
+            streams = self.pktgen_helper.prepare_stream_from_tginput(tgenInput, 100, None, self.tester.pktgen)
+            # set traffic option
+            traffic_opt = {'delay': 5, 'duration': 20}
+            _, pps = self.tester.pktgen.measure_throughput(stream_ids=streams, options=traffic_opt)
             Mpps = pps / 1000000.0
             pct = Mpps * 100 / float(self.wirespeed(self.nic, frame_size, 1))
             self.verify(Mpps != 0, "can not received data of frame size %d" % frame_size)
-- 
2.7.4



More information about the dts mailing list