duplicating testcase in nat mode

This commit is contained in:
Nikita Yadav
2021-11-06 09:33:41 +05:30
parent 2259c08d91
commit 0d97234ce5

View File

@@ -1,7 +1,8 @@
"""
Advanced Test: Rate v/s Range test under various combinations: NAT Mode
pytest -m "throughput_benchmark_test and nat" -s -vvv --skip-testrail --testbed=basic-01
pytest -m "ratevsrange and NAT " -s -vvv --skip-testrail --testbed=basic-01 --alluredir=../allure_reports
--> allure serve ../allure_reports/
"""
@@ -10,31 +11,26 @@ import time
import pytest
import allure
import os.path
import csv
import pandas as pd
pytestmark = [pytest.mark.ratevsrange, pytest.mark.nat ,pytest.mark.usefixtures("setup_test_run")]
pytestmark = [pytest.mark.advance, pytest.mark.ratevsrange, pytest.mark.nat]
setup_params_general = {
"mode": "NAT",
"ssid_modes": {
"open": [{"ssid_name": "ssid_open_2g", "appliedRadios": ["is2dot4GHz"]},
{"ssid_name": "ssid_open_5g", "appliedRadios": ["is5GHzU", "is5GHz", "is5GHzL"]}],
"wpa": [{"ssid_name": "ssid_wpa_2g", "appliedRadios": ["is2dot4GHz"], "security_key": "something"},
{"ssid_name": "ssid_wpa_5g", "appliedRadios": ["is5GHzU", "is5GHz", "is5GHzL"],
"security_key": "something"}],
"wpa2_personal": [
{"ssid_name": "ssid_wpa2_2g", "appliedRadios": ["is2dot4GHz"], "security_key": "something"},
{"ssid_name": "ssid_wpa2_5g", "appliedRadios": ["is5GHzU", "is5GHz", "is5GHzL"],
"security_key": "something"}]},
"rf": {
"is5GHz": {"channelBandwidth": "is20MHz"},
"is5GHzL": {"channelBandwidth": "is20MHz"},
"is5GHzU": {"channelBandwidth": "is20MHz"}
{"ssid_name": "ssid_wpa2_2g", "appliedRadios": ["2G"], "security_key": "something"},
{"ssid_name": "ssid_wpa2_5g", "appliedRadios": ["5G"], "security_key": "something"}
]
},
"rf": {},
"radius": False
}
@allure.feature("BRIDGE MODE CLIENT CONNECTIVITY")
@allure.feature("NAT MODE CLIENT CONNECTIVITY")
@pytest.mark.parametrize(
'setup_profiles',
[setup_params_general],
@@ -48,12 +44,12 @@ class TestRatevsRangeNat(object):
@pytest.mark.wpa2_personal
@pytest.mark.twog
@pytest.mark.client11b
def test_client_wpa2_personal_2g_11b(self, get_vif_state,
lf_test, station_names_twog, create_lanforge_chamberview_dut,
@allure.testcase(url="https://telecominfraproject.atlassian.net/browse/WIFI-2495", name="WIFI-2495")
def test_client_wpa2_personal_2g_11b(self, lf_test, station_names_twog, create_lanforge_chamberview_dut,
get_configuration, lf_tools):
"""
pytest -m "ratevsrange and nat and 11bclient" -s -vvv --skip-testrail --testbed=advanced-02
pytest -m "ratevsrange and client11b" -s -vvv --skip-testrail --testbed=advanced-02
jira- wifi-2495
"""
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
@@ -64,9 +60,7 @@ class TestRatevsRangeNat(object):
band = "twog"
vlan = 1
dut_name = create_lanforge_chamberview_dut
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")
station = lf_test.Client_Connect(ssid=ssid_name, security=security,
passkey=security_key, mode=mode, band=band,
station_name=station_names_twog, vlan_id=vlan)
@@ -78,10 +72,13 @@ class TestRatevsRangeNat(object):
if station:
time.sleep(3)
rvr_o = lf_test.ratevsrange(station_name=station_names_twog, mode=mode,
instance_name="NAT_RVR_11B",
instance_name="NAT_RVR_11B_TWO_G",
vlan_id=vlan, dut_name=dut_name, raw_lines=val)
report_name = rvr_o.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
print("report name ", report_name)
entries = os.listdir("../reports/" + report_name + '/')
print("entries",entries)
lf_tools.attach_report_graphs(report_name=report_name, pdf_name="Rate vs Range Test")
pdf = False
for i in entries:
if ".pdf" in i:
@@ -89,11 +86,20 @@ class TestRatevsRangeNat(object):
if pdf:
allure.attach.file(source="../reports/" + report_name + "/" + pdf,
name=get_configuration["access_point"][0]["model"] + "ratevsrange")
print("Test Completed... Cleaning up Stations")
lf_test.Client_disconnect(station_name=station_names_twog)
kpi_val = lf_tools.read_kpi_file(column_name=None, dir_name=report_name)
print(str(kpi_val))
allure.attach(name="Kpi Data", body=str(kpi_val))
if str(kpi_val) == "empty":
print("kpi is empty, station did not got ip, Test failed")
allure.attach(name="Kpi Data", body="station did not got ip Test failed.")
assert False
else:
print("Test passed successfully")
allure.attach(name="Kpi Data", body=str(kpi_val))
assert station
else:
assert False
@@ -101,12 +107,13 @@ class TestRatevsRangeNat(object):
@pytest.mark.wpa2_personal
@pytest.mark.twog
@pytest.mark.client11g
def test_client_wpa2_personal_2g_11g(self, get_vif_state,
@allure.testcase(url="https://telecominfraproject.atlassian.net/browse/WIFI-2496", name="WIFI-2496")
def test_client_wpa2_personal_2g_11g(self,
lf_test, station_names_twog, create_lanforge_chamberview_dut,
get_configuration, lf_tools):
"""
pytest -m "ratevsrange and nat and client11g" -s -vvv --skip-testrail --testbed=advanced-02
pytest -m "ratevsrange and NAT and client11g" -s -vvv --skip-testrail --testbed=advanced-02
jira- wifi-2496
"""
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
@@ -117,25 +124,22 @@ class TestRatevsRangeNat(object):
band = "twog"
vlan = 1
dut_name = create_lanforge_chamberview_dut
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")
station = lf_test.Client_Connect(ssid=ssid_name, security=security,
passkey=security_key, mode=mode, band=band,
station_name=station_names_twog, vlan_id=vlan)
print("station", station)
val = [['modes: 802.11G'], ['pkts: MTU'], ['directions: DUT Transmit'], ['traffic_types:TCP'],
val = [['modes: 802.11g'], ['pkts: MTU'], ['directions: DUT Transmit'], ['traffic_types:TCP'],
['bandw_options: AUTO'], ['spatial_streams: AUTO'], ['attenuator: 1.1.3034'], ['attenuator2: 1.1.3059'],
['attenuations: 0..+50..950'], ['attenuations2: 0..+50..950']]
if station:
time.sleep(3)
rvr_o = lf_test.ratevsrange(station_name=station_names_twog, mode=mode,
instance_name="NAT_RVR_11G",
instance_name="NAT_RVR_11G_TWO_G",
vlan_id=vlan, dut_name=dut_name, raw_lines=val)
report_name = rvr_o.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
entries = os.listdir("../reports/" + report_name + '/')
lf_tools.attach_report_graphs(report_name=report_name, pdf_name="Rate vs Range Test")
pdf = False
for i in entries:
if ".pdf" in i:
@@ -145,9 +149,17 @@ class TestRatevsRangeNat(object):
name=get_configuration["access_point"][0]["model"] + "ratevsrange")
print("Test Completed... Cleaning up Stations")
lf_test.Client_disconnect(station_name=station_names_twog)
script_dir = os.path.dirname(__file__) # Script directory
print(script_dir)
kpi_val = lf_tools.read_kpi_file(column_name=None, dir_name=report_name)
print(str(kpi_val))
allure.attach(name="Kpi Data", body=str(kpi_val))
if str(kpi_val) == "empty":
print("kpi is empty, station did not got ip, Test failed")
allure.attach(name="Kpi Data", body="station did not got ip Test failed.")
assert False
else:
print("Test passed successfully")
allure.attach(name="Kpi Data", body=str(kpi_val))
assert station
else:
assert False
@@ -155,12 +167,13 @@ class TestRatevsRangeNat(object):
@pytest.mark.wpa2_personal
@pytest.mark.fiveg
@pytest.mark.client11a
def test_client_wpa2_personal_5g_11a(self, get_vif_state,
@allure.testcase(url="https://telecominfraproject.atlassian.net/browse/WIFI-2497", name="WIFI-2497")
def test_client_wpa2_personal_5g_11a(self,
lf_test, station_names_fiveg, create_lanforge_chamberview_dut,
get_configuration, lf_tools):
get_configuration,lf_tools):
"""
pytest -m "ratevsrange and nat and client11a" -s -vvv --skip-testrail --testbed=advanced-02
pytest -m "ratevsrange and NAT and client11a" -s -vvv --skip-testrail --testbed=advanced-02
jira- wifi-2497
"""
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
@@ -171,9 +184,6 @@ class TestRatevsRangeNat(object):
band = "fiveg"
vlan = 1
dut_name = create_lanforge_chamberview_dut
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")
station = lf_test.Client_Connect(ssid=ssid_name, security=security,
passkey=security_key, mode=mode, band=band,
station_name=station_names_fiveg, vlan_id=vlan)
@@ -182,14 +192,14 @@ class TestRatevsRangeNat(object):
val = [['modes: 802.11a'], ['pkts: MTU'], ['directions: DUT Transmit'], ['traffic_types:TCP'],
['bandw_options: AUTO'], ['spatial_streams: AUTO'], ['attenuator: 1.1.3034'], ['attenuator2: 1.1.3059'],
['attenuations: 0..+50..950'], ['attenuations2: 0..+50..950']]
if station:
time.sleep(3)
rvr_o = lf_test.ratevsrange(station_name=station_names_fiveg, mode=mode,
instance_name="NAT_RVR_11A",
instance_name="NAT_RVR_11A_FIVE_G",
vlan_id=vlan, dut_name=dut_name, raw_lines=val)
report_name = rvr_o.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
entries = os.listdir("../reports/" + report_name + '/')
lf_tools.attach_report_graphs(report_name=report_name, pdf_name="Rate vs Range Test")
pdf = False
for i in entries:
if ".pdf" in i:
@@ -199,9 +209,15 @@ class TestRatevsRangeNat(object):
name=get_configuration["access_point"][0]["model"] + "ratevsrange")
print("Test Completed... Cleaning up Stations")
lf_test.Client_disconnect(station_name=station_names_fiveg)
kpi_val = lf_tools.read_kpi_file(column_name=None, dir_name=report_name)
kpi_val = lf_tools.read_kpi_file(column_name=['numeric-score'], dir_name=report_name)
print(str(kpi_val))
allure.attach(name="Kpi Data", body=str(kpi_val))
if str(kpi_val) == "empty":
print("kpi is empty, station did not got ip, Test failed")
allure.attach(name="Kpi Data", body="station did not got ip Test failed.")
assert False
else:
print("Test passed successfully")
allure.attach(name="Kpi Data", body=str(kpi_val))
assert station
else:
assert False
@@ -209,12 +225,13 @@ class TestRatevsRangeNat(object):
@pytest.mark.wpa2_personal
@pytest.mark.fiveg
@pytest.mark.client11an
def test_client_wpa2_personal_5g_11an(self, get_vif_state,
@allure.testcase(url="https://telecominfraproject.atlassian.net/browse/WIFI-2498", name="WIFI-2498")
def test_client_wpa2_personal_5g_11an(self,
lf_test, station_names_fiveg, create_lanforge_chamberview_dut,
get_configuration,lf_tools):
get_configuration, lf_tools):
"""
pytest -m "ratevsrange and nat and client11an" -s -vvv --skip-testrail --testbed=advanced-02
pytest -m "ratevsrange and NAT and client11an" -s -vvv --skip-testrail --testbed=advanced-02
jira- wifi-2498
"""
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
@@ -225,9 +242,7 @@ class TestRatevsRangeNat(object):
band = "fiveg"
vlan = 1
dut_name = create_lanforge_chamberview_dut
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")
station = lf_test.Client_Connect(ssid=ssid_name, security=security,
passkey=security_key, mode=mode, band=band,
station_name=station_names_fiveg, vlan_id=vlan)
@@ -236,14 +251,14 @@ class TestRatevsRangeNat(object):
val = [['modes: 802.11an'], ['pkts: MTU'], ['directions: DUT Transmit'], ['traffic_types:TCP'],
['bandw_options: AUTO'], ['spatial_streams: AUTO'], ['attenuator: 1.1.3034'], ['attenuator2: 1.1.3059'],
['attenuations: 0..+50..950'], ['attenuations2: 0..+50..950']]
if station:
time.sleep(3)
rvr_o = lf_test.ratevsrange(station_name=station_names_fiveg, mode=mode,
instance_name="NAT_RVR_11AN",
instance_name="NAT_RVR_11AN_FIVE_G",
vlan_id=vlan, dut_name=dut_name, raw_lines=val)
report_name = rvr_o.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
entries = os.listdir("../reports/" + report_name + '/')
lf_tools.attach_report_graphs(report_name=report_name, pdf_name="Rate vs Range Test")
pdf = False
for i in entries:
if ".pdf" in i:
@@ -255,7 +270,13 @@ class TestRatevsRangeNat(object):
lf_test.Client_disconnect(station_name=station_names_fiveg)
kpi_val = lf_tools.read_kpi_file(column_name=None, dir_name=report_name)
print(str(kpi_val))
allure.attach(name="Kpi Data", body=str(kpi_val))
if str(kpi_val) == "empty":
print("kpi is empty, station did not got ip, Test failed")
allure.attach(name="Kpi Data", body="station did not got ip Test failed.")
assert False
else:
print("Test passed successfully")
allure.attach(name="Kpi Data", body=str(kpi_val))
assert station
else:
assert False
@@ -264,12 +285,12 @@ class TestRatevsRangeNat(object):
@pytest.mark.wpa2_personal
@pytest.mark.fiveg
@pytest.mark.client11ac
def test_client_wpa2_personal_5g_11ac(self, get_vif_state,
lf_test, station_names_fiveg, create_lanforge_chamberview_dut,
@allure.testcase(url="https://telecominfraproject.atlassian.net/browse/WIFI-2499", name="WIFI-2499")
def test_client_wpa2_personal_5g_11ac(self, lf_test, station_names_fiveg, create_lanforge_chamberview_dut,
get_configuration, lf_tools):
"""
pytest -m "ratevsrange and nat and client11ac" -s -vvv --skip-testrail --testbed=advanced-02
pytest -m "ratevsrange and NAT and client11ac" -s -vvv --skip-testrail --testbed=advanced-02
jira- wifi-2499
"""
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
@@ -280,25 +301,23 @@ class TestRatevsRangeNat(object):
band = "fiveg"
vlan = 1
dut_name = create_lanforge_chamberview_dut
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")
station = lf_test.Client_Connect(ssid=ssid_name, security=security,
passkey=security_key, mode=mode, band=band,
station_name=station_names_fiveg, vlan_id=vlan)
print("station", station)
val = [['modes: 802.11an-AC'], ['pkts: MTU'], ['directions: DUT Transmit'], ['traffic_types:TCP'],
['bandw_options: AUTO'], ['spatial_streams: AUTO'], ['attenuator: 1.1.3034'], ['attenuator2: 1.1.3059'],
['attenuations: 0..+50..950'], ['attenuations2: 0..+50..950']]
['bandw_options: AUTO'], ['spatial_streams: AUTO'], ['attenuator: 1.1.3034'] ,['attenuator2: 1.1.3059'], ['attenuations: 0..+50..950'],['attenuations2: 0..+50..950']]
if station:
time.sleep(3)
rvr_o = lf_test.ratevsrange(station_name=station_names_fiveg, mode=mode,
instance_name="NAT_RVR_11AC",
instance_name="NAT_RVR_11AC_FIVE_G",
vlan_id=vlan, dut_name=dut_name, raw_lines=val)
report_name = rvr_o.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
entries = os.listdir("../reports/" + report_name + '/')
lf_tools.attach_report_graphs(report_name=report_name, pdf_name="Rate vs Range Test")
pdf = False
for i in entries:
if ".pdf" in i:
@@ -310,7 +329,13 @@ class TestRatevsRangeNat(object):
lf_test.Client_disconnect(station_name=station_names_fiveg)
kpi_val = lf_tools.read_kpi_file(column_name=None, dir_name=report_name)
print(str(kpi_val))
allure.attach(name="Kpi Data", body=str(kpi_val))
if str(kpi_val) == "empty":
print("kpi is empty, station did not got ip, Test failed")
allure.attach(name="Kpi Data", body="station did not got ip Test failed.")
assert False
else:
print("Test passed successfully")
allure.attach(name="Kpi Data", body=str(kpi_val))
assert station
else:
assert False