Merge branch 'master' into WIFI-4698

This commit is contained in:
Saurabh Goyal
2021-10-20 00:08:10 +05:30
committed by GitHub
16 changed files with 7934 additions and 16 deletions

View File

@@ -136,7 +136,7 @@ jobs:
- -c
- |
cd tests
pytest -m "${{ github.event.inputs.marker_expression }}" -s -vvv --testbed="${{ github.event.inputs.testbed }}" -o firmware="${{ github.event.inputs.firmware }}" --alluredir=/tmp/allure-results "${{ github.event.inputs.additional_args }}"
pytest -m "${{ github.event.inputs.marker_expression }}" -s -vvv --testbed="${{ github.event.inputs.testbed }}" -o firmware="${{ github.event.inputs.firmware }}" --alluredir=/tmp/allure-results ${{ github.event.inputs.additional_args }}
ret=\$?
# sleep some time to be able to download the Allure results
sleep 60

View File

@@ -40,7 +40,7 @@ from lf_rx_sensitivity_test import RxSensitivityTest
from lf_ap_auto_test import ApAutoTest
from csv_to_influx import CSVtoInflux
from influx2 import RecordInflux
#from lf_multipsk import MultiPsk
from lf_multipsk import MultiPsk
class RunTest:
@@ -61,6 +61,7 @@ class RunTest:
self.dataplane_obj = None
self.rx_sensitivity_obj = None
self.dualbandptest_obj = None
self.msthpt_obj = None
self.influx_params = influx_params
# self.influxdb = RecordInflux(_influx_host=influx_params["influx_host"],
# _influx_port=influx_params["influx_port"],
@@ -72,6 +73,8 @@ class RunTest:
os.mkdir(self.local_report_path)
# self.staConnect = StaConnect2(self.lanforge_ip, self.lanforge_port, debug_=self.debug)
def Client_Connectivity(self, ssid="[BLANK]", passkey="[BLANK]", security="open", extra_securities=[],
station_name=[], mode="BRIDGE", vlan_id=1, band="twog"):
"""SINGLE CLIENT CONNECTIVITY using test_connect2.py"""
@@ -228,7 +231,7 @@ class RunTest:
def wifi_capacity(self, mode="BRIDGE", vlan_id=100, batch_size="1,5,10,20,40,64,128",
instance_name="wct_instance", download_rate="1Gbps", influx_tags=[],
upload_rate="1Gbps", protocol="TCP-IPv4", duration="60000"):
upload_rate="1Gbps", protocol="TCP-IPv4", duration="60000", raw_lines=[]):
instance_name = ''.join(random.choices(string.ascii_uppercase + string.digits, k=S))
if mode == "BRIDGE":
upstream_port = self.upstream_port
@@ -239,6 +242,7 @@ class RunTest:
'''SINGLE WIFI CAPACITY using lf_wifi_capacity.py'''
wificapacity_obj = WiFiCapacityTest(lfclient_host=self.lanforge_ip,
lf_port=self.lanforge_port,
ssh_port=self.lf_ssh_port,
lf_user="lanforge",
lf_password="lanforge",
local_lf_report_dir=self.local_report_path,
@@ -261,7 +265,7 @@ class RunTest:
ssid=None,
enables=[],
disables=[],
raw_lines=[],
raw_lines=raw_lines,
raw_lines_file="",
sets=[])
@@ -679,6 +683,71 @@ class RunTest:
else:
return False
def Multi_Sta_Thpt(self, ssid_5G="[BLANK]", ssid_2G="[BLANK]", mode="BRIDGE", vlan_id=100, dut_name="TIP",
raw_line=[], instance_name="test_demo", dut_5g="", dut_2g=""):
inst_name = instance_name.split('_')[0]
instance_name = ''.join(random.choices(string.ascii_uppercase + string.digits, k=S))
if mode == "BRIDGE":
self.upstream_port = self.upstream_port
elif mode == "NAT":
self.upstream_port = self.upstream_port
else:
self.upstream_port = self.upstream_port + "." + str(vlan_id)
sets = [['Basic Client Connectivity', '0'], ['Multi Band Performance', '0'],
['Throughput vs Pkt Size', '0'], ['Capacity', '0'],
['Stability', '0'],
['Band-Steering', '0'], ['Multi-Station Throughput vs Pkt Size', '1'],
['Long-Term', '0']]
if len(self.twog_radios) == 1:
twog_radios = [[self.twog_radios[0]]]
elif len(self.twog_radios) > 1:
twog_radio = []
for i in range(0, len(self.twog_radios)):
twog_radio.append([self.twog_radios[i]])
twog_radios = twog_radio
if len(self.fiveg_radios) == 1:
fiveg_radios = [[self.fiveg_radios[0]]]
elif len(self.fiveg_radios) > 1:
fiveg_radio = []
for i in range(0, len(self.fiveg_radios)):
fiveg_radio.append([self.fiveg_radios[i]])
fiveg_radios = fiveg_radio
self.msthpt_obj = ApAutoTest(lf_host=self.lanforge_ip,
lf_port=self.lanforge_port,
ssh_port=self.lf_ssh_port,
lf_user="lanforge",
lf_password="lanforge",
instance_name=instance_name,
config_name="dbp_config",
upstream="1.1." + self.upstream_port,
pull_report=True,
dut5_0=dut_5g,
dut2_0=dut_2g,
load_old_cfg=False,
local_lf_report_dir=self.local_report_path,
radio2=twog_radios,
radio5=fiveg_radios,
sets=sets,
raw_lines=raw_line
)
self.msthpt_obj.setup()
self.msthpt_obj.run()
report_name = self.msthpt_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
influx = CSVtoInflux(influxdb=self.influxdb,
_influx_tag=self.influx_params["influx_tag"],
target_csv=self.local_report_path + report_name + "/kpi.csv")
influx.post_to_influx()
return self.msthpt_obj
if __name__ == '__main__':
influx_host = "influx.cicd.lab.wlan.tip.build"
influx_port = 80

View File

@@ -65,7 +65,7 @@ class TestRateLimitingBridge(object):
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_tcp_dl", mode=mode, vlan_id=vlan,
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_up", mode=mode, vlan_id=vlan,
download_rate="0Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000")
@@ -97,7 +97,7 @@ class TestRateLimitingBridge(object):
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_tcp_dl", mode=mode, vlan_id=vlan,
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_dw", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="0Gbps", protocol="UDP-IPv4", duration="60000")
@@ -129,7 +129,7 @@ class TestRateLimitingBridge(object):
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_tcp_dl", mode=mode, vlan_id=vlan,
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_up_dw", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000")
@@ -139,6 +139,131 @@ class TestRateLimitingBridge(object):
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.twog
@pytest.mark.disable_up_dw
def test_wpa2_personal_ssid_disable_up_dw_batch_size_125_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and bridge and wpa2_personal and twog and disable_up_dw"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
profile_data["rate-limit"][0] = 0
profile_data["rate-limit"][1] = 0
mode = "BRIDGE"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_up_dw_di", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000")
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.twog
@pytest.mark.up_dw_per_client
def test_wpa2_personal_ssid_up_dw_per_client_batch_size_125_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and bridge and wpa2_personal and twog and up_dw_per_client"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "BRIDGE"
vlan = 1
raw_lines = [["dl_rate_sel: Per-Station Download Rate:"], ["ul_rate_sel: Per-Station Download Rate:"]]
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_bridge_up_dw_per_cl", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000", raw_lines=raw_lines)
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.twog
@pytest.mark.up_per_client
def test_wpa2_personal_ssid_up_per_client_batch_size_125_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and bridge and wpa2_personal and twog and up_per_client"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "BRIDGE"
vlan = 1
raw_lines = [["ul_rate_sel: Per-Station Download Rate:"]]
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_up_per_cl", mode=mode, vlan_id=vlan,
download_rate="0Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000", raw_lines=raw_lines)
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.twog
@pytest.mark.dw_per_client
def test_wpa2_personal_ssid_dw_per_client_batch_size_125_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and bridge and wpa2_personal and twog and dw_per_client"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "BRIDGE"
vlan = 1
raw_lines = [["dw_rate_sel: Per-Station Download Rate:"]]
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_dw_per_cl", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="0Gbps", protocol="UDP-IPv4", duration="60000", raw_lines=raw_lines)
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.fiveg
@pytest.mark.up
@@ -161,7 +286,7 @@ class TestRateLimitingBridge(object):
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_tcp_dl", mode=mode, vlan_id=vlan,
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_up_125", mode=mode, vlan_id=vlan,
download_rate="0Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000")
@@ -193,7 +318,7 @@ class TestRateLimitingBridge(object):
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_tcp_dl", mode=mode, vlan_id=vlan,
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_dw_125", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="0Gbps", protocol="UDP-IPv4", duration="60000")
@@ -225,7 +350,7 @@ class TestRateLimitingBridge(object):
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_tcp_dl", mode=mode, vlan_id=vlan,
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_up_dw_125", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000")
@@ -257,7 +382,7 @@ class TestRateLimitingBridge(object):
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=1, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_tcp_dl", mode=mode, vlan_id=vlan,
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_up_1", mode=mode, vlan_id=vlan,
download_rate="0Gbps", batch_size="1",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000")
@@ -289,7 +414,7 @@ class TestRateLimitingBridge(object):
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=1, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_tcp_dl", mode=mode, vlan_id=vlan,
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_tcp_dl_dw_1", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1",
upload_rate="0Gbps", protocol="UDP-IPv4", duration="60000")
@@ -321,7 +446,7 @@ class TestRateLimitingBridge(object):
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=1, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_tcp_dl", mode=mode, vlan_id=vlan,
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_tcp_dl_up_dw_1", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000")
@@ -353,7 +478,7 @@ class TestRateLimitingBridge(object):
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=1, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_tcp_dl", mode=mode, vlan_id=vlan,
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_up_1_5g", mode=mode, vlan_id=vlan,
download_rate="0Gbps", batch_size="1",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000")
@@ -385,7 +510,7 @@ class TestRateLimitingBridge(object):
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=1, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_tcp_dl", mode=mode, vlan_id=vlan,
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_dw_1_5g", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1",
upload_rate="0Gbps", protocol="UDP-IPv4", duration="60000")
@@ -417,7 +542,7 @@ class TestRateLimitingBridge(object):
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=1, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_tcp_dl", mode=mode, vlan_id=vlan,
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_up_dw_1_5g", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000")
@@ -426,3 +551,128 @@ class TestRateLimitingBridge(object):
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.fiveg
@pytest.mark.disable_up_dw
def test_wpa2_personal_ssid_disable_up_dw_batch_size_125_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and bridge and wpa2_personal and fiveg and disable_up_dw"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
profile_data["rate-limit"][0] = 0
profile_data["rate-limit"][1] = 0
mode = "BRIDGE"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_up_dw_di_5g", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000")
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.fiveg
@pytest.mark.up_dw_per_client
def test_wpa2_personal_ssid_up_dw_per_client_batch_size_125_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and bridge and wpa2_personal and fiveg and up_dw_per_client"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "BRIDGE"
vlan = 1
raw_lines = [["dl_rate_sel: Per-Station Download Rate:"], ["ul_rate_sel: Per-Station Download Rate:"]]
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_per_cl_5g", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000", raw_lines=raw_lines)
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.fiveg
@pytest.mark.up_per_client
def test_wpa2_personal_ssid_up_per_client_batch_size_125_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and bridge and wpa2_personal and fiveg and up_per_client"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "BRIDGE"
vlan = 1
raw_lines = [["ul_rate_sel: Per-Station Download Rate:"]]
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_up_per_cl_5g", mode=mode, vlan_id=vlan,
download_rate="0Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000", raw_lines=raw_lines)
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.fiveg
@pytest.mark.dw_per_client
def test_wpa2_personal_ssid_dw_per_client_batch_size_125_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and bridge and wpa2_personal and fiveg and dw_per_client"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "BRIDGE"
vlan = 1
raw_lines = [["dw_rate_sel: Per-Station Download Rate:"]]
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_BRIDGE_dw_per_cl_5g", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="0Gbps", protocol="UDP-IPv4", duration="60000", raw_lines=raw_lines)
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True

View File

@@ -0,0 +1,678 @@
"""
Rate LImiting Nat Mode Scenario
"""
import allure
import pytest
pytestmark = [pytest.mark.rate_limiting, pytest.mark.nat, pytest.mark.general, pytest.mark.ucentral,
pytest.mark.regression]
setup_params_general = {
"mode": "NAT",
"ssid_modes": {
"wpa2_personal": [
{"ssid_name": "ssid_wpa2_2g_br",
"appliedRadios": ["2G"],
"security_key": "something",
"rate-limit": {
"ingress-rate": 100,
"egress-rate": 100
}
},
{"ssid_name": "ssid_wpa2_5g_br",
"appliedRadios": ["5G"],
"security_key": "something",
"rate-limit": {
"ingress-rate": 100,
"egress-rate": 100
}
}]},
"rf": {},
"radius": False
}
@allure.feature("Nat Mode Rate Limiting")
@pytest.mark.parametrize(
'setup_profiles',
[setup_params_general],
indirect=True,
scope="class"
)
@pytest.mark.usefixtures("setup_profiles")
class TestRateLimitingNat(object):
@pytest.mark.wpa2_personal
@pytest.mark.twog
@pytest.mark.up
@pytest.mark.batch_size_125
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_nat_ssid_up_batch_size_125_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and twog and up and batch_size_125"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "NAT"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_up", mode=mode, vlan_id=vlan,
download_rate="0Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000")
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.twog
@pytest.mark.dw
@pytest.mark.batch_size_125
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_nat_ssid_dw_batch_size_125_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and twog and dw and batch_size_125"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "NAT"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_dw", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="0Gbps", protocol="UDP-IPv4", duration="60000")
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.twog
@pytest.mark.up_dw
@pytest.mark.batch_size_125
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_nat_ssid_up_dw_batch_size_125_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and twog and up_dw and batch_size_125"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "NAT"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_up_dw", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000")
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.twog
@pytest.mark.disable_up_dw
def test_wpa2_personal_nat_ssid_disable_up_dw_batch_size_125_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and twog and disable_up_dw"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
profile_data["rate-limit"][0] = 0
profile_data["rate-limit"][1] = 0
mode = "NAT"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_up_dw_di", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000")
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.twog
@pytest.mark.up_dw_per_client
def test_wpa2_personal_nat_ssid_up_dw_per_client_batch_size_125_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and twog and up_dw_per_client"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "NAT"
vlan = 1
raw_lines = [["dl_rate_sel: Per-Station Download Rate:"], ["ul_rate_sel: Per-Station Download Rate:"]]
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_up_dw_per_cl", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000", raw_lines=raw_lines)
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.twog
@pytest.mark.up_per_client
def test_wpa2_personal_nat_ssid_up_per_client_batch_size_125_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and twog and up_per_client"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "NAT"
vlan = 1
raw_lines = [["ul_rate_sel: Per-Station Download Rate:"]]
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_up_per_cl", mode=mode, vlan_id=vlan,
download_rate="0Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000", raw_lines=raw_lines)
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.twog
@pytest.mark.dw_per_client
def test_wpa2_personal_nat_ssid_dw_per_client_batch_size_125_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and twog and dw_per_client"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "NAT"
vlan = 1
raw_lines = [["dw_rate_sel: Per-Station Download Rate:"]]
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_dw_per_cl", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="0Gbps", protocol="UDP-IPv4", duration="60000", raw_lines=raw_lines)
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.fiveg
@pytest.mark.up
@pytest.mark.batch_size_125
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_nat_ssid_up_batch_size_125_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and fiveg and up and batch_size_125"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "NAT"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_125", mode=mode, vlan_id=vlan,
download_rate="0Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000")
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.fiveg
@pytest.mark.dw
@pytest.mark.batch_size_125
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_nat_ssid_dw_batch_size_125_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and fiveg and dw and batch_size_125"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "NAT"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_dw_125", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="0Gbps", protocol="UDP-IPv4", duration="60000")
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.fiveg
@pytest.mark.up_dw
@pytest.mark.batch_size_125
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_nat_ssid_up_dw_batch_size_125_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and fiveg and up_dw and batch_size_125"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "NAT"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_up_dw_125", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000")
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.twog
@pytest.mark.up
@pytest.mark.batch_size_1
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_nat_ssid_up_batch_size_1_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and twog and up and batch_size_1"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "NAT"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=1, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_up_1", mode=mode, vlan_id=vlan,
download_rate="0Gbps", batch_size="1",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000")
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.twog
@pytest.mark.dw
@pytest.mark.batch_size_1
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_nat_ssid_dw_batch_size_1_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and twog and dw and batch_size_1"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "NAT"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=1, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_tcp_dl", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1",
upload_rate="0Gbps", protocol="UDP-IPv4", duration="60000")
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.twog
@pytest.mark.up_dw
@pytest.mark.batch_size_1
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_nat_ssid_up_dw_batch_size_1_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and twog and up_dw and batch_size_1"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "NAT"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=1, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_up_dw_1", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000")
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.fiveg
@pytest.mark.up
@pytest.mark.batch_size_1
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_nat_ssid_up_batch_size_1_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and fiveg and up and batch_size_1"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "NAT"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=1, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_up_1_5g", mode=mode, vlan_id=vlan,
download_rate="0Gbps", batch_size="1",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000")
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.fiveg
@pytest.mark.dw
@pytest.mark.batch_size_1
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_nat_ssid_dw_batch_size_1_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and fiveg and dw and batch_size_1"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "NAT"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=1, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_dw_1_5g", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1",
upload_rate="0Gbps", protocol="UDP-IPv4", duration="60000")
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.fiveg
@pytest.mark.up_dw
@pytest.mark.batch_size_1
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_nat_ssid_up_dw_batch_size_1_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and fiveg and up_dw and batch_size_1"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "NAT"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=1, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_up_dw_5g", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000")
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.fiveg
@pytest.mark.disable_up_dw
def test_wpa2_personal_nat_ssid_disable_up_dw_batch_size_125_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and fiveg and disable_up_dw"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
profile_data["rate-limit"][0] = 0
profile_data["rate-limit"][1] = 0
mode = "NAT"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_up_dw_di", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000")
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.fiveg
@pytest.mark.up_dw_per_client
def test_wpa2_personal_nat_ssid_up_dw_per_client_batch_size_125_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and fiveg and up_dw_per_client"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "NAT"
vlan = 1
raw_lines = [["dl_rate_sel: Per-Station Download Rate:"], ["ul_rate_sel: Per-Station Download Rate:"]]
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_up_dw_per_cl_5g", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000", raw_lines=raw_lines)
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.fiveg
@pytest.mark.up_per_client
def test_wpa2_personal_nat_ssid_up_per_client_batch_size_125_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and fiveg and up_per_client"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "NAT"
vlan = 1
raw_lines = [["ul_rate_sel: Per-Station Download Rate:"]]
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_up_per_cl_5g", mode=mode, vlan_id=vlan,
download_rate="0Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000", raw_lines=raw_lines)
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.fiveg
@pytest.mark.dw_per_client
def test_wpa2_personal_nat_ssid_dw_per_client_batch_size_125_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and nat and wpa2_personal and fiveg and dw_per_client"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "NAT"
vlan = 1
raw_lines = [["dw_rate_sel: Per-Station Download Rate:"]]
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_nat_dw_per_cl_5g", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="0Gbps", protocol="UDP-IPv4", duration="60000", raw_lines=raw_lines)
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True

View File

@@ -0,0 +1,678 @@
"""
Rate LImiting Vlan Mode Scenario
"""
import allure
import pytest
pytestmark = [pytest.mark.rate_limiting, pytest.mark.vlan, pytest.mark.general, pytest.mark.ucentral,
pytest.mark.regression]
setup_params_general = {
"mode": "VLAN",
"ssid_modes": {
"wpa2_personal": [
{"ssid_name": "ssid_wpa2_2g_br",
"appliedRadios": ["2G"],
"security_key": "something",
"rate-limit": {
"ingress-rate": 100,
"egress-rate": 100
}
},
{"ssid_name": "ssid_wpa2_5g_br",
"appliedRadios": ["5G"],
"security_key": "something",
"rate-limit": {
"ingress-rate": 100,
"egress-rate": 100
}
}]},
"rf": {},
"radius": False
}
@allure.feature("Vlan Mode Rate Limiting")
@pytest.mark.parametrize(
'setup_profiles',
[setup_params_general],
indirect=True,
scope="class"
)
@pytest.mark.usefixtures("setup_profiles")
class TestRateLimitingVlan(object):
@pytest.mark.wpa2_personal
@pytest.mark.twog
@pytest.mark.up
@pytest.mark.batch_size_125
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_vlan_ssid_up_batch_size_125_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and twog and up and batch_size_125"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "VLAN"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_up_125", mode=mode, vlan_id=vlan,
download_rate="0Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000")
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.twog
@pytest.mark.dw
@pytest.mark.batch_size_125
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_vlan_ssid_dw_batch_size_125_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and twog and dw and batch_size_125"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "VLAN"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_dw_125", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="0Gbps", protocol="UDP-IPv4", duration="60000")
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.twog
@pytest.mark.up_dw
@pytest.mark.batch_size_125
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_vlan_ssid_up_dw_batch_size_125_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and twog and up_dw and batch_size_125"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "VLAN"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_up_dw_125", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000")
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.twog
@pytest.mark.disable_up_dw
def test_wpa2_personal_vlan_ssid_disable_up_dw_batch_size_125_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and twog and disable_up_dw"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
profile_data["rate-limit"][0] = 0
profile_data["rate-limit"][1] = 0
mode = "VLAN"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_up_dw_dis", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000")
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.twog
@pytest.mark.up_dw_per_client
def test_wpa2_personal_vlan_ssid_up_dw_per_client_batch_size_125_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and twog and up_dw_per_client"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "VLAN"
vlan = 1
raw_lines = [["dl_rate_sel: Per-Station Download Rate:"], ["ul_rate_sel: Per-Station Download Rate:"]]
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_up_dw_per_client", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000", raw_lines=raw_lines)
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.twog
@pytest.mark.up_per_client
def test_wpa2_personal_vlan_ssid_up_per_client_batch_size_125_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and twog and up_per_client"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "VLAN"
vlan = 1
raw_lines = [["ul_rate_sel: Per-Station Download Rate:"]]
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_up_per_cl", mode=mode, vlan_id=vlan,
download_rate="0Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000", raw_lines=raw_lines)
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.twog
@pytest.mark.dw_per_client
def test_wpa2_personal_vlan_ssid_dw_per_client_batch_size_125_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and twog and dw_per_client"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "VLAN"
vlan = 1
raw_lines = [["dw_rate_sel: Per-Station Download Rate:"]]
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_dw_per_cl", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="0Gbps", protocol="UDP-IPv4", duration="60000", raw_lines=raw_lines)
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.fiveg
@pytest.mark.up
@pytest.mark.batch_size_125
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_vlan_ssid_up_batch_size_125_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and fiveg and up and batch_size_125"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "VLAN"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_up_125_5g", mode=mode, vlan_id=vlan,
download_rate="0Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000")
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.fiveg
@pytest.mark.dw
@pytest.mark.batch_size_125
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_vlan_ssid_dw_batch_size_125_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and fiveg and dw and batch_size_125"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "VLAN"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_dw_125_5g", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="0Gbps", protocol="UDP-IPv4", duration="60000")
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.fiveg
@pytest.mark.up_dw
@pytest.mark.batch_size_125
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_vlan_ssid_up_dw_batch_size_125_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and fiveg and up_dw and batch_size_125"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "VLAN"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_up_dw_125_5g", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000")
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.twog
@pytest.mark.up
@pytest.mark.batch_size_1
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_vlan_ssid_up_batch_size_1_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and twog and up and batch_size_1"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "VLAN"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=1, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_up_1_5g", mode=mode, vlan_id=vlan,
download_rate="0Gbps", batch_size="1",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000")
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.twog
@pytest.mark.dw
@pytest.mark.batch_size_1
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_vlan_ssid_dw_batch_size_1_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and twog and dw and batch_size_1"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "VLAN"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=1, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_dw_1_5g", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1",
upload_rate="0Gbps", protocol="UDP-IPv4", duration="60000")
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.twog
@pytest.mark.up_dw
@pytest.mark.batch_size_1
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_vlan_ssid_up_dw_batch_size_1_2g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and twog and up_dw and batch_size_1"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssid_name = profile_data["ssid_name"]
mode = "VLAN"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="2G", num_stations=1, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_up_dw_5g", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000")
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.fiveg
@pytest.mark.up
@pytest.mark.batch_size_1
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_vlan_ssid_up_batch_size_1_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and fiveg and up and batch_size_1"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "VLAN"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=1, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_up_1_5g", mode=mode, vlan_id=vlan,
download_rate="0Gbps", batch_size="1",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000")
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.fiveg
@pytest.mark.dw
@pytest.mark.batch_size_1
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_vlan_ssid_dw_batch_size_1_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and fiveg and dw and batch_size_1"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "VLAN"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=1, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_dw_1_5g", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1",
upload_rate="0Gbps", protocol="UDP-IPv4", duration="60000")
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.fiveg
@pytest.mark.up_dw
@pytest.mark.batch_size_1
@allure.story('Rate Limiting Open SSID 2.4 GHZ Band')
def test_wpa2_personal_vlan_ssid_up_dw_batch_size_1_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and fiveg and up_dw and batch_size_1"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "VLAN"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=1, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_up_dw_1_5g", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000")
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.fiveg
@pytest.mark.disable_up_dw
def test_wpa2_personal_vlan_ssid_disable_up_dw_batch_size_125_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and fiveg and disable_up_dw"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
profile_data["rate-limit"][0] = 0
profile_data["rate-limit"][1] = 0
mode = "VLAN"
vlan = 1
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_up_dw_di_5g", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000")
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.fiveg
@pytest.mark.up_dw_per_client
def test_wpa2_personal_vlan_ssid_up_dw_per_client_batch_size_125_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and fiveg and up_dw_per_client"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "VLAN"
vlan = 1
raw_lines = [["dl_rate_sel: Per-Station Download Rate:"], ["ul_rate_sel: Per-Station Download Rate:"]]
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_up_dw_per_cl", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000", raw_lines=raw_lines)
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.fiveg
@pytest.mark.up_per_client
def test_wpa2_personal_vlan_ssid_up_per_client_batch_size_125_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and fiveg and up_per_client"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "VLAN"
vlan = 1
raw_lines = [["ul_rate_sel: Per-Station Download Rate:"]]
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_up_per_cl_5g", mode=mode, vlan_id=vlan,
download_rate="0Gbps", batch_size="1,2,5",
upload_rate="1Gbps", protocol="UDP-IPv4", duration="60000", raw_lines=raw_lines)
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True
@pytest.mark.wpa2_personal
@pytest.mark.fiveg
@pytest.mark.dw_per_client
def test_wpa2_personal_vlan_ssid_dw_per_client_batch_size_125_5g(self, lf_test, get_vif_state, lf_tools):
"""
Test Rate Limiting Scenario
pytest -m "rate_limiting and vlan and wpa2_personal and fiveg and dw_per_client"
"""
# run wifi capacity test here
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssid_name = profile_data["ssid_name"]
mode = "VLAN"
vlan = 1
raw_lines = [["dw_rate_sel: Per-Station Download Rate:"]]
allure.attach(name="ssid-rates", body=str(profile_data["rate-limit"]))
get_vif_state.append(ssid_name)
if ssid_name not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
lf_tools.add_stations(band="5G", num_stations=5, dut=lf_tools.dut_name, ssid_name=ssid_name)
lf_tools.Chamber_View()
wct_obj = lf_test.wifi_capacity(instance_name="test_client_wpa2_vlan_dw_per_cl_5g", mode=mode, vlan_id=vlan,
download_rate="1Gbps", batch_size="1,2,5",
upload_rate="0Gbps", protocol="UDP-IPv4", duration="60000", raw_lines=raw_lines)
report_name = wct_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
lf_tools.attach_report_graphs(report_name=report_name)
print("Test Completed... Cleaning up Stations")
assert True