diff --git a/examples/openthread/ot_ci_function.py b/examples/openthread/ot_ci_function.py index 6c5ca2c6279..424381508b2 100644 --- a/examples/openthread/ot_ci_function.py +++ b/examples/openthread/ot_ci_function.py @@ -5,6 +5,7 @@ import ipaddress import logging import os +import random import re import socket import struct @@ -259,11 +260,20 @@ def ot_ping( return tx_count, rx_count -def ping_and_check(dut: IdfDut, target: str, tx_total: int = 10, timeout: int = 6, pass_rate: float = 0.8) -> None: +def ping_and_check( + dut: IdfDut, + target: str, + tx_total: int = 10, + timeout: int = 6, + pass_rate: float = 0.8, + size: int = 10, + size_range: tuple[int, int] | None = None, +) -> None: tx_count = 0 rx_count = 0 for _ in range(tx_total): - tx, rx = ot_ping(dut, target, timeout=timeout, count=1, size=10, interval=6) + ping_size = random.randint(*size_range) if size_range else size + tx, rx = ot_ping(dut, target, timeout=timeout, count=1, size=ping_size, interval=6) tx_count += tx rx_count += rx diff --git a/examples/openthread/pytest_otbr.py b/examples/openthread/pytest_otbr.py index c0429b97539..aec9c136aee 100644 --- a/examples/openthread/pytest_otbr.py +++ b/examples/openthread/pytest_otbr.py @@ -1158,9 +1158,9 @@ def test_ot_ssed_device(dut: tuple[IdfDut, IdfDut]) -> None: cli_rloc_addr = ':'.join(ocf.get_rloc_addr(leader).split(':')[:-1]) ssed_address = f'{cli_rloc_addr}:{rloc16_decode_from_leader}' - ocf.ping_and_check(dut=leader, target=ssed_address, tx_total=10, timeout=6) + ocf.ping_and_check(dut=leader, target=ssed_address, tx_total=10, timeout=6, size_range=(10, 70)) time.sleep(random.randint(5, 20)) - ocf.ping_and_check(dut=leader, target=ssed_address, tx_total=10, timeout=6) + ocf.ping_and_check(dut=leader, target=ssed_address, tx_total=10, timeout=6, size_range=(100, 200)) finally: ocf.execute_command(leader, 'factoryreset') ocf.hardreset_dut(ssed_device)