From 44128f91d2ff7be46f6b059726039c9ef2bb3d5b Mon Sep 17 00:00:00 2001 From: Holger Freyther Date: Tue, 5 Mar 2019 06:34:33 +0000 Subject: Revert "nitb_netreg_mass: Add code to declare a run successful/failure" This reverts commit b4ad8d72431df2336b9c7fbc6eb9597daa80a35c. Reason for revert: There was a true dependency on earlier changes (len(mobiles)). Rollback until the resource configuration is merged. Change-Id: If0f5e24cec2f0d1d144b464180b341cacbdf0ebb --- src/osmo_gsm_tester/ms_driver.py | 12 -------- src/osmo_ms_driver/location_update_test.py | 27 ++-------------- suites/nitb_netreg_mass/register_default_mass.py | 39 +++--------------------- 3 files changed, 7 insertions(+), 71 deletions(-) diff --git a/src/osmo_gsm_tester/ms_driver.py b/src/osmo_gsm_tester/ms_driver.py index de2f967..e8e543c 100644 --- a/src/osmo_gsm_tester/ms_driver.py +++ b/src/osmo_gsm_tester/ms_driver.py @@ -146,18 +146,6 @@ class MsDriver(log.Origin): """ self._test_case.print_stats() - def get_stats(self): - """ - Returns a statistical summary of the test. - """ - return self._test_case.get_stats() - - def get_result_values(self): - """ - Returns the raw result values of the test run in any order. - """ - return self._test_case.get_result_values() - def cleanup(self): """ Cleans up the driver (e.g. AF_UNIX files). diff --git a/src/osmo_ms_driver/location_update_test.py b/src/osmo_ms_driver/location_update_test.py index f14bd28..8500607 100644 --- a/src/osmo_ms_driver/location_update_test.py +++ b/src/osmo_ms_driver/location_update_test.py @@ -23,11 +23,9 @@ from .test_support import imsi_ki_gen, Results from datetime import timedelta -import collections import time class LUResult(Results): - """Representation of a Location Updating Result.""" def __init__(self, name): super().__init__(name) @@ -46,10 +44,6 @@ class LUResult(Results): def lu_delay(self): return self.lu_time() - self.start_time() - -LUStats = collections.namedtuple("LUStats", ["num_attempted", "num_completed", - "min_latency", "max_latency"]) - class MassUpdateLocationTest(log.Origin): """ A test to launch a configurable amount of MS and make them @@ -213,24 +207,9 @@ class MassUpdateLocationTest(log.Origin): max_value = result.lu_delay() return min_value, max_value - def get_result_values(self): - """ - Returns the raw result values of the test run in any order. - """ - return self._results.values() - - def get_stats(self): - """ - Returns a statistical summary of the test. - """ - attempted = self._number_of_ms - completed = attempted - self._outstanding - min_latency, max_latency = self.find_min_max(filter(lambda x: x.has_lu_time(), self._results.values())) - return LUStats(attempted, completed, min_latency, max_latency) - def print_stats(self): - stats = self.get_stats() - all_completed = stats.num_attempted == stats.num_completed + all_completed = self.all_completed() + min_value, max_value = self.find_min_max(filter(lambda x: x.has_lu_time(), self._results.values())) self.log("Tests done", all_completed=all_completed, - min=stats.min_latency, max=stats.max_latency) + min=min_value, max=max_value) diff --git a/suites/nitb_netreg_mass/register_default_mass.py b/suites/nitb_netreg_mass/register_default_mass.py index 8259359..ede2b74 100644 --- a/suites/nitb_netreg_mass/register_default_mass.py +++ b/suites/nitb_netreg_mass/register_default_mass.py @@ -1,17 +1,16 @@ #!/usr/bin/env python3 """ -Runs a network registration with a 'massive' amount of MS +Run a network registration with a 'massive' amount of MS using the ms_driver infrastructure. """ from osmo_gsm_tester.testenv import * -from datetime import timedelta -print('Claiming resources for the test') +print('use resources...') nitb = suite.nitb() bts = suite.bts() ms_driver = suite.ms_driver() -print('Launching a simple network') +print('start nitb and bts...') nitb.bts_add(bts) nitb.start() bts.start() @@ -24,35 +23,5 @@ for ms in ms_driver.ms_subscribers(): # Run the base test. ms_driver.run_test() -# Print the stats of the run. +# Print stats ms_driver.print_stats() - -# Evaluate if this run was successful or not. Our initial acceptance criteria -# is quite basic but it should allow us to scale to a larger number of MS and -# reasons (e.g. have a full BCCH). -# -# 99% of LUs should complete -# 99% of successful LUs should complete within 10s. -stats = ms_driver.get_stats() -if len(mobiles) > 0 and stats.num_completed < 1: - raise Exception("No run completed.") -completion_ratio = stats.num_attempted / stats.num_completed - -# Verify that 99% of LUs completed. -if completion_ratio < 0.99: - raise Exception("Completion ratio of %f%% lower than threshold." % (completion_ratio * 100.0)) - -# Check how many results are below our threshold. -acceptable_delay = timedelta(seconds=20) -results = ms_driver.get_result_values() -quick_enough = 0 -for result in results: - if not result.has_lu_time(): - continue - if timedelta(seconds=result.lu_delay()) >= acceptable_delay: - continue - quick_enough = quick_enough + 1 - -latency_ratio = quick_enough / len(results) -if latency_ratio < 0.99: - raise Exception("Latency ratio of %f%% lower than threshold." % (latency_ratio * 100.0)) -- cgit v1.2.3