rx sensitivity test case

This commit is contained in:
anjali
2021-07-19 14:25:51 +05:30
parent 791122c668
commit 09c0be2074
2 changed files with 2255 additions and 21 deletions

View File

@@ -31,6 +31,7 @@ from create_station import CreateStation
import lf_ap_auto_test
import lf_dataplane_test
from lf_dataplane_test import DataplaneTest
from lf_rx_sensitivity_test import RxSensitivityTest
from lf_ap_auto_test import ApAutoTest
from csv_to_influx import CSVtoInflux
from influx2 import RecordInflux
@@ -52,6 +53,7 @@ class RunTest:
self.lf_ssh_port = lanforge_data["ssh_port"]
self.staConnect = None
self.dataplane_obj = None
self.rx_sensitivity_obj = None
self.dualbandptest_obj = None
self.influx_params = influx_params
self.influxdb = RecordInflux(_lfjson_host=self.lanforge_ip,
@@ -320,7 +322,7 @@ class RunTest:
influx.post_to_influx()
return self.dataplane_obj
def dualbandperformancetest(self,ssid_5G="[BLANK]",ssid_2G="[BLANK]",mode="BRIDGE", vlan_id=100,dut_name="TIP",
def dualbandperformancetest(self, ssid_5G="[BLANK]", ssid_2G="[BLANK]", mode="BRIDGE", vlan_id=100, dut_name="TIP",
instance_name="test_demo"):
if mode == "BRIDGE":
self.client_connect.upstream_port = self.upstream_port
@@ -330,26 +332,27 @@ class RunTest:
self.client_connect.upstream_port = self.upstream_port + "." + str(vlan_id)
self.dualbandptest_obj = ApAutoTest(lf_host=self.lanforge_ip,
lf_port=self.lanforge_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_name + ' ' + ssid_5G,
dut2_0=dut_name + ' ' + ssid_2G,
load_old_cfg=False,
max_stations_2=1,
max_stations_5=1,
max_stations_dual=2,
radio2=[["1.1.wiphy0"]],
radio5=[["1.1.wiphy1"]],
sets=[['Basic Client Connectivity', '0'], ['Multi Band Performance', '1'],
['Throughput vs Pkt Size', '0'], ['Capacity', '0'], ['Stability', '0'],
['Band-Steering', '0'], ['Multi-Station Throughput vs Pkt Size', '0'],
['Long-Term', '0']]
)
lf_port=self.lanforge_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_name + ' ' + ssid_5G,
dut2_0=dut_name + ' ' + ssid_2G,
load_old_cfg=False,
max_stations_2=1,
max_stations_5=1,
max_stations_dual=2,
radio2=[["1.1.wiphy0"]],
radio5=[["1.1.wiphy1"]],
sets=[['Basic Client Connectivity', '0'], ['Multi Band Performance', '1'],
['Throughput vs Pkt Size', '0'], ['Capacity', '0'],
['Stability', '0'],
['Band-Steering', '0'], ['Multi-Station Throughput vs Pkt Size', '0'],
['Long-Term', '0']]
)
self.dualbandptest_obj.setup()
self.dualbandptest_obj.run()
report_name = self.dataplane_obj.report_name[0]['LAST']["response"].split(":::")[1].split("/")[-1]
@@ -359,6 +362,45 @@ class RunTest:
influx.post_to_influx()
return self.dualbandptest_obj
def rx_sensitivity(self, station_name=None, mode="BRIDGE", vlan_id=100, download_rate="85%", dut_name="TIP",
upload_rate="85%", duration="1m", instance_name="test_demo"):
if mode == "BRIDGE":
self.client_connect.upstream_port = self.upstream_port
elif mode == "NAT":
self.client_connect.upstream_port = self.upstream_port
else:
self.client_connect.upstream_port = self.upstream_port + "." + str(vlan_id)
self.rx_sensitivity_obj = RxSensitivityTest(lf_host=self.lanforge_ip,
lf_port=self.lanforge_port,
ssh_port=self.lf_ssh_port,
local_path=self.local_report_path,
lf_user="lanforge",
lf_password="lanforge",
instance_name=instance_name,
config_name="rx_sen_config",
upstream="1.1." + self.upstream_port,
pull_report=True,
load_old_cfg=False,
download_speed=download_rate,
upload_speed=upload_rate,
duration=duration,
dut=dut_name,
station="1.1." + station_name[0],
raw_lines=[['txo_preamble: VHT'],
['txo_mcs: 4 OFDM, HT, VHT;5 OFDM, HT, VHT;6 OFDM, HT, VHT;7 '
'OFDM, HT, VHT'], ['spatial_streams: 3'], ['bandw_options: 80'], ['txo_sgi: ON'],
['txo_retries: No Retry'], ["show_3s: 1"], ['txo_txpower: 17'],
["show_ll_graphs: 1"], ["show_log: 1"]],
)
self.rx_sensitivity_obj.setup()
self.rx_sensitivity_obj.run()
report_name = self.rx_sensitivity_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.rx_sensitivity_obj
if __name__ == '__main__':

File diff suppressed because it is too large Load Diff