diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index a654ff128..8e938da6d 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -806,6 +806,16 @@ example_test_001_01: example_test_002_01: <<: *example_test_template + tags: + - ESP32 + - Example_ShieldBox_Basic + +example_test_006_01: + <<: *example_test_template + image: $CI_DOCKER_REGISTRY/ubuntu-test-env$BOT_DOCKER_IMAGE_TAG + only: + variables: + - $BOT_LABEL_IPERF_STRESS_TEST tags: - ESP32 - Example_ShieldBox diff --git a/examples/wifi/iperf/iperf_test.py b/examples/wifi/iperf/iperf_test.py index 5782d299a..346805112 100644 --- a/examples/wifi/iperf/iperf_test.py +++ b/examples/wifi/iperf/iperf_test.py @@ -478,24 +478,19 @@ def build_iperf_with_config(config_name): os.chdir(cwd) -def get_configs(env): - att_port = env.get_variable("attenuator_port") - ap_list = env.get_variable("ap_list") - pc_nic_ip = env.get_pc_nic_info("pc_nic", "ipv4")["addr"] - apc_ip = env.get_variable("apc_ip") - pc_iperf_log_file = os.path.join(env.log_path, "pc_iperf_log.md") - return att_port, ap_list, pc_nic_ip, apc_ip, pc_iperf_log_file - - -@IDF.idf_example_test(env_tag="Example_ShieldBox", category="stress") +@IDF.idf_example_test(env_tag="Example_ShieldBox_Basic", category="stress") def test_wifi_throughput_with_different_configs(env, extra_data): """ steps: | 1. build iperf with specified configs 2. test throughput for all routers """ - att_port, ap_list, pc_nic_ip, apc_ip, pc_iperf_log_file = get_configs(env) - ap_info = ap_list[0] + pc_nic_ip = env.get_pc_nic_info("pc_nic", "ipv4")["addr"] + pc_iperf_log_file = os.path.join(env.log_path, "pc_iperf_log.md") + ap_info = { + "ssid": env.get_variable("ap_ssid"), + "password": env.get_variable("ap_password"), + } config_names_raw = subprocess.check_output(["ls", os.path.dirname(os.path.abspath(__file__))]) @@ -524,14 +519,6 @@ def test_wifi_throughput_with_different_configs(env, extra_data): test_utility = IperfTestUtility(dut, config_name, ap_info["ssid"], ap_info["password"], pc_nic_ip, pc_iperf_log_file, test_result[config_name]) - PowerControl.Control.control_rest(apc_ip, ap_info["outlet"], "OFF") - PowerControl.Control.control(apc_ip, {ap_info["outlet"]: "ON"}) - assert Attenuator.set_att(att_port, 0) is True - - if not test_utility.wait_ap_power_on(): - Utility.console_log("[{}] failed to power on, skip testing this AP" - .format(ap_info["ssid"]), color="red") - for _ in range(RETRY_COUNT_FOR_BEST_PERFORMANCE): test_utility.run_all_cases(0) @@ -558,8 +545,10 @@ def test_wifi_throughput_vs_rssi(env, extra_data): 3. set attenuator value from 0-60 for each router 4. test TCP tx rx and UDP tx rx throughput """ - att_port, ap_list, pc_nic_ip, apc_ip, pc_iperf_log_file = get_configs(env) - + att_port = env.get_variable("attenuator_port") + ap_list = env.get_variable("ap_list") + pc_nic_ip = env.get_pc_nic_info("pc_nic", "ipv4")["addr"] + apc_ip = env.get_variable("apc_ip") pc_iperf_log_file = os.path.join(env.log_path, "pc_iperf_log.md") test_result = { @@ -604,15 +593,19 @@ def test_wifi_throughput_vs_rssi(env, extra_data): report.generate_report() -@IDF.idf_example_test(env_tag="Example_ShieldBox") +@IDF.idf_example_test(env_tag="Example_ShieldBox_Basic") def test_wifi_throughput_basic(env, extra_data): """ steps: | 1. test TCP tx rx and UDP tx rx throughput 2. compare with the pre-defined pass standard """ - att_port, ap_list, pc_nic_ip, apc_ip, pc_iperf_log_file = get_configs(env) - ap_info = ap_list[0] + pc_nic_ip = env.get_pc_nic_info("pc_nic", "ipv4")["addr"] + pc_iperf_log_file = os.path.join(env.log_path, "pc_iperf_log.md") + ap_info = { + "ssid": env.get_variable("ap_ssid"), + "password": env.get_variable("ap_password"), + } # 1. build iperf with best config build_iperf_with_config(BEST_PERFORMANCE_CONFIG) @@ -633,14 +626,6 @@ def test_wifi_throughput_basic(env, extra_data): test_utility = IperfTestUtility(dut, BEST_PERFORMANCE_CONFIG, ap_info["ssid"], ap_info["password"], pc_nic_ip, pc_iperf_log_file, test_result) - PowerControl.Control.control_rest(apc_ip, ap_info["outlet"], "OFF") - PowerControl.Control.control(apc_ip, {ap_info["outlet"]: "ON"}) - assert Attenuator.set_att(att_port, 0) is True - - if not test_utility.wait_ap_power_on(): - Utility.console_log("[{}] failed to power on, skip testing this AP" - .format(ap_info["ssid"]), color="red") - # 4. run test for TCP Tx, Rx and UDP Tx, Rx for _ in range(RETRY_COUNT_FOR_BEST_PERFORMANCE): test_utility.run_all_cases(0)