From de6fc4b670fc42fc96f27f375fbcf7a099629434 Mon Sep 17 00:00:00 2001 From: Martin Klozik Date: Thu, 18 May 2017 10:18:38 +0100 Subject: tests: Improvement of step driven testcases A set of improvements was introduced to enhance step driven testcases capabilities. Details: * delay among test steps is configurable by TEST_STEP_DELAY parameter * step driven tool function exec was renamed to exec_shell * new step driven tool function exec_python was introduced to execute a python code * new step driven object sleep was introduced to pause test execution for defined number of seconds. * fixed bug in settings.validate_getValue() to correctly validate access of parameters modified by TEST_PARAMS * new #PARAM() macro was introduced to allow references among configuration parameters * multistream support has been added into ixnetrfc2544v2.tcl, which is used for tunneling protocols test (op2p deployment) * fixed bug in op2p deployment to list interfaces and flows from both bridges involved in the test * test report updated to state exact rfcxxxx type of traffic type, e.g. rfc2544_continuous * test report of step driven testcases was updated to contain measured values from traffic generator in CSV report * method for ovs flow comparison was modified to normalize IPv4 CIDR network addr (e.g. 10.0.0.5/8 => 10.0.0.0/8) JIRA: VSPERF-512 Change-Id: Ib4f38dcdfbf3820dd766b25520da0ad0c81f3293 Signed-off-by: Martin Klozik Reviewed-by: Al Morton Reviewed-by: Christian Trautman Reviewed-by: Sridhar Rao Reviewed-by: Trevor Cooper Reviewed-by: Ciara Loftus --- core/traffic_controller_rfc2544.py | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) (limited to 'core/traffic_controller_rfc2544.py') diff --git a/core/traffic_controller_rfc2544.py b/core/traffic_controller_rfc2544.py index e230c832..cb839518 100644 --- a/core/traffic_controller_rfc2544.py +++ b/core/traffic_controller_rfc2544.py @@ -1,4 +1,4 @@ -# Copyright 2015-2016 Intel Corporation. +# Copyright 2015-2017 Intel Corporation. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -42,6 +42,9 @@ class TrafficControllerRFC2544(TrafficController, IResults): self._logger.debug('send_traffic with ' + str(self._traffic_gen_class)) + # update type with detailed traffic value + self._type = traffic['traffic_type'] + for packet_size in self._packet_sizes: # Merge framesize with the default traffic definition if 'l2' in traffic: @@ -60,8 +63,8 @@ class TrafficControllerRFC2544(TrafficController, IResults): result = self._traffic_gen_class.send_rfc2544_throughput( traffic, tests=self._tests, duration=self._duration, lossrate=self._lossrate) else: - raise RuntimeError("Unsupported traffic type {} was \ - detected".format(traffic['traffic_type'])) + raise RuntimeError("Unsupported traffic type {} was " + "detected".format(traffic['traffic_type'])) result = self._append_results(result, packet_size) self._results.append(result) @@ -74,6 +77,9 @@ class TrafficControllerRFC2544(TrafficController, IResults): self._logger.debug('send_traffic_async with ' + str(self._traffic_gen_class)) + # update type with detailed traffic value + self._type = traffic['traffic_type'] + for packet_size in self._packet_sizes: traffic['l2'] = {'framesize': packet_size} self._traffic_gen_class.start_rfc2544_throughput( -- cgit 1.2.3-korg