diff --git a/sysmocom/suites/4g/iperf3_dl.py b/sysmocom/suites/4g/iperf3_dl.py index 6f790767..bf5b1f00 100755 --- a/sysmocom/suites/4g/iperf3_dl.py +++ b/sysmocom/suites/4g/iperf3_dl.py @@ -36,6 +36,8 @@ iperf3srv.stop() iperf3cli.print_results() iperf3srv.print_results(iperf3cli.proto() == iperf3cli.PROTO_UDP) -res_str = ue.verify_metric(max_rate * 0.8, operation='avg', metric='dl_brate', criterion='gt') +# 80% of the maximum rate for half of the test duration +half_duration = int(round(iperf3cli.time_sec() / 2)) +res_str = ue.verify_metric(max_rate * 0.8, operation='max_rolling_avg', metric='dl_brate', criterion='gt', window=half_duration) print(res_str) test.set_report_stdout(res_str) diff --git a/sysmocom/suites/4g/iperf3_ul.py b/sysmocom/suites/4g/iperf3_ul.py index 4ae0118b..6c0d25d6 100755 --- a/sysmocom/suites/4g/iperf3_ul.py +++ b/sysmocom/suites/4g/iperf3_ul.py @@ -36,6 +36,8 @@ iperf3srv.stop() iperf3cli.print_results() iperf3srv.print_results(iperf3cli.proto() == iperf3cli.PROTO_UDP) -res_str = ue.verify_metric(max_rate * 0.8, operation='avg', metric='ul_brate', criterion='gt') +# 80% of the maximum rate for half of the test duration +half_duration = int(round(iperf3cli.time_sec() / 2)) +res_str = ue.verify_metric(max_rate * 0.8, operation='max_rolling_avg', metric='ul_brate', criterion='gt', window=half_duration) print(res_str) test.set_report_stdout(res_str)