mirror of
				https://github.com/Telecominfraproject/wlan-testing.git
				synced 2025-10-31 19:08:01 +00:00 
			
		
		
		
	Added Android Test Cases
Signed-off-by: raj-TIP <rpasupathy@perfectomobile.com>
This commit is contained in:
		 Submodule lanforge/lanforge-scripts updated: de86a454b2...7b596c3f2f
									
								
							| @@ -80,9 +80,14 @@ def setup_perfectoMobile_android(request): | ||||
|     | ||||
|     TestCaseFullName = os.environ.get('PYTEST_CURRENT_TEST').split(':')[-1].split(' ')[0] | ||||
|     nCurrentTestMethodNameSplit = re.sub(r'\[.*?\]\ *', "", TestCaseFullName) | ||||
|     TestCaseName = nCurrentTestMethodNameSplit.removeprefix('test_') | ||||
|     #print ("\nTestCaseName: " + TestCaseName) | ||||
|      | ||||
|     try: | ||||
|         TestCaseName = nCurrentTestMethodNameSplit.removeprefix('test_') | ||||
|         print ("\nTestCaseName: " + TestCaseName) | ||||
|     except Exception as e: | ||||
|         TestCaseName = nCurrentTestMethodNameSplit | ||||
|         print("\nUpgrade Python to 3.9 to avoid test_ string in your test case name, see below URL") | ||||
|         print("https://www.andreagrandi.it/2020/10/11/python39-introduces-removeprefix-removesuffix/") | ||||
|          | ||||
|     projectname = request.config.getini("projectName") | ||||
|     projectversion = request.config.getini("projectVersion") | ||||
|     jobname = request.config.getini("jobName") | ||||
| @@ -97,12 +102,35 @@ def setup_perfectoMobile_android(request): | ||||
|  | ||||
|     def teardown(): | ||||
|         try: | ||||
|             print(" -- Tear Down --")      | ||||
|             reporting_client.test_stop(TestResultFactory.create_success()) | ||||
|             print('Report-Url: ' + reporting_client.report_url() + '\n') | ||||
|             print("\n\n---------- Tear Down ----------") | ||||
|             | ||||
|  | ||||
|             testFailed = request.session.testsfailed | ||||
|             if testFailed>0: | ||||
|                 print ("Test Case Failure, please check report link: " + testCaseName) | ||||
|                 reporting_client.test_stop(TestResultFactory.create_failure("Exception See Test Case")) | ||||
|                 #seen = {None} | ||||
|                 #session = request.node | ||||
|                 #print(session) | ||||
|             elif testFailed<=0: | ||||
|                 reporting_client.test_stop(TestResultFactory.create_success()) | ||||
|                  | ||||
|             #amount = len(request.session.items) | ||||
|             #print("Test Session Items: ") | ||||
|             #print(amount) | ||||
|  | ||||
|             #tests_count = request.session.testscollected | ||||
|             #print("Test Collected: ") | ||||
|             #print(tests_count) | ||||
|  | ||||
|             print('Report-Url: ' + reporting_client.report_url()) | ||||
|             print("----------------------------------------------------------") | ||||
|             driver.close() | ||||
|         except Exception as e: | ||||
|             print(" -- Exception Not Able To close --")     | ||||
|             print(" -- Exception While Tear Down --")     | ||||
|             reporting_client.test_stop(TestResultFactory.create_failure("Exception")) | ||||
|             print('Report-Url-Failure: ' + reporting_client.report_url() + '\n') | ||||
|             driver.close() | ||||
|             print (e.message) | ||||
|         finally: | ||||
|             try: | ||||
| @@ -152,14 +180,24 @@ def set_APconnMobileDevice_android(WifiName, WifiPass, setup_perfectoMobile, con | ||||
|             print("Get Connected Wifi Name if any") | ||||
|             report.step_start("Get Connected Wifi Name if any")            | ||||
|             try: | ||||
|                 driver.implicitly_wait(35) | ||||
|                 driver.implicitly_wait(20) | ||||
|                 WifiNameElement = driver.find_element_by_xpath("//*[@resource-id='android:id/summary']") | ||||
|                 Wifi_AP_Name = WifiNameElement.text | ||||
|                 print("Current Wifi Status Name: " + Wifi_AP_Name) | ||||
|             except NoSuchElementException: | ||||
|                 report.step_start("Wifi Radio Button Enabled")  | ||||
|                 WifiRadioBtnConnections = driver.find_element_by_xpath("//*[@resource-id='android:id/switch_widget' and @content-desc='Wi-Fi']") | ||||
|                 WifiRadioBtnConnections.click() | ||||
|                 report.step_start("Checking Wifi Radio Button Status")  | ||||
|                 try: | ||||
|                     driver.implicitly_wait(5) | ||||
|                     WifiRadioBtnConnections = driver.find_element_by_xpath("//*[@resource-id='android:id/switch_widget' and @content-desc='Wi-Fi' and @text='Off']") | ||||
|                     report.step_start("Wifi Radio Button Disabled, Enabling Radio Button..")  | ||||
|                     print("Wifi Radio Button Disabled, Enabling Radio Button..") | ||||
|                     WifiRadioBtnConnections.click() | ||||
|                 except NoSuchElementException: | ||||
|                     Wifi_AP_Name="Null" | ||||
|                     driver.implicitly_wait(25) | ||||
|                     report.step_start("Wifi Radio Button Already Enabled")  | ||||
|                     print("Wifi Radio Button Already Enabled") | ||||
|      | ||||
|         except NoSuchElementException: | ||||
|             Wifi_AP_Name="Null" | ||||
|             print("Device not connected to any Wifi")  | ||||
| @@ -309,7 +347,7 @@ def ForgetWifiConnection(setup_perfectoMobile, WifiName, connData): | ||||
|     print("Switching Context to Native") | ||||
|     driver.switch_to.context('NATIVE_APP') | ||||
|     contexts = driver.contexts | ||||
|     print(contexts) | ||||
|     #print(contexts) | ||||
|  | ||||
|     #Open Settings Application | ||||
|     openApp(connData["appPackage-android"], setup_perfectoMobile) | ||||
| @@ -343,6 +381,7 @@ def ForgetWifiConnection(setup_perfectoMobile, WifiName, connData): | ||||
|         wifiElement.click() | ||||
|      | ||||
|         if Wifi_AP_Name.__eq__(WifiName): | ||||
|             report.step_start("Wifi Name Matches - Already Connected To: " + Wifi_AP_Name)  | ||||
|             print("Wifi Name Matches - Already Connected To: " + Wifi_AP_Name)  | ||||
|  | ||||
|             print("Load Wifi Details Page") | ||||
| @@ -366,13 +405,13 @@ def ForgetWifiConnection(setup_perfectoMobile, WifiName, connData): | ||||
|                 report.step_start("Verify if wifi is disconnected from: " + WifiName)  | ||||
|                 WifiForget= driver.find_element_by_xpath("//*[@resource-id='com.android.settings:id/summary' and @text='Connected']/parent::*/android.widget.TextView[@text='" + WifiName + "']")      | ||||
|                 print("Wifi Not disconnected, check xpath for: " + WifiName) | ||||
|                 assert False | ||||
|             except NoSuchElementException: | ||||
|                 print("Wifi Disconnected Successfully: " + WifiName) | ||||
|              | ||||
|         else: | ||||
|             print("Wifi Does not Match with Wifi: " + WifiName) | ||||
|          | ||||
|             report.step_start("Wifi Does not Match with Wifi: " + WifiName)  | ||||
|             report.step_start("Probably wifi auto connected to another network")  | ||||
|             try: | ||||
|                 report.step_start("Wifi Details Page")  | ||||
|                 WifiInternetDetails = driver.find_element_by_xpath("//*[@resource-id='com.android.settings:id/wifi_details']")      | ||||
| @@ -386,14 +425,13 @@ def ForgetWifiConnection(setup_perfectoMobile, WifiName, connData): | ||||
|                 WifiForget.click() | ||||
|             except NoSuchElementException: | ||||
|                 print("Wifi Connection Error: " + WifiName) | ||||
|  | ||||
|              | ||||
|        | ||||
|             print("Verify if wifi is disconnected from: " + WifiName) | ||||
|             try: | ||||
|                 report.step_start("Verify if wifi is disconnected from: " + WifiName)  | ||||
|                 WifiForget= driver.find_element_by_xpath("//*[@resource-id='com.android.settings:id/summary' and @text='Connected']/parent::*/android.widget.TextView[@text='" + WifiName + "']")      | ||||
|                 print("Wifi Not disconnected, check xpath for: " + WifiName) | ||||
|                 assert False | ||||
|                | ||||
|             except NoSuchElementException: | ||||
|                 print("Wifi Disconnected Successfully: " + WifiName) | ||||
|  | ||||
| @@ -457,7 +495,7 @@ def Toggle_AirplaneMode_android(setup_perfectoMobile, connData): | ||||
|     print("Switching Context to Native") | ||||
|     driver.switch_to.context('NATIVE_APP') | ||||
|     contexts = driver.contexts | ||||
|     print(contexts) | ||||
|     #print(contexts) | ||||
|  | ||||
|     #Open Settings Application | ||||
|     openApp(connData["appPackage-android"], setup_perfectoMobile) | ||||
| @@ -513,7 +551,7 @@ def Toggle_WifiMode_android(setup_perfectoMobile, WifiName, connData): | ||||
|     print("Switching Context to Native") | ||||
|     driver.switch_to.context('NATIVE_APP') | ||||
|     contexts = driver.contexts | ||||
|     print(contexts) | ||||
|     #print(contexts) | ||||
|  | ||||
|     #Open Settings Application | ||||
|     openApp(connData["appPackage-android"], setup_perfectoMobile) | ||||
| @@ -587,7 +625,6 @@ def Toggle_WifiMode_android(setup_perfectoMobile, WifiName, connData): | ||||
|  | ||||
|     return WifiFlag | ||||
|  | ||||
|  | ||||
| def verifyUploadDownloadSpeed_android(setup_perfectoMobile, get_APToMobileDevice_data): | ||||
|     print("\n-------------------------------------") | ||||
|     print("Verify Upload & Download Speed") | ||||
|   | ||||
| @@ -13,7 +13,6 @@ import sys | ||||
| import time | ||||
| from selenium.common.exceptions import NoSuchElementException | ||||
| from selenium.webdriver.common.by import By | ||||
| #from appium import webdriver | ||||
| from selenium.common.exceptions import NoSuchElementException | ||||
| from selenium.webdriver.support.ui import WebDriverWait | ||||
| from appium.webdriver.common.mobileby import MobileBy | ||||
| @@ -42,7 +41,12 @@ def rebootPhone(setup_perfectoMobile): | ||||
|     setup_perfectoMobile[0].execute_script('mobile:handset:reboot', params) | ||||
|  | ||||
| def set_APconnMobileDevice_iOS(WifiName, WifiPass, setup_perfectoMobile, connData): | ||||
|      | ||||
|     print("\n-------------------------------------") | ||||
|     print("Select Wifi/AccessPoint Connection") | ||||
|     print("-------------------------------------") | ||||
|     | ||||
|     reportFlag = True | ||||
|  | ||||
|     print("Verifying Wifi/AP Connection Details....")  | ||||
|     report = setup_perfectoMobile[1]     | ||||
|     driver = setup_perfectoMobile[0] | ||||
| @@ -79,10 +83,14 @@ def set_APconnMobileDevice_iOS(WifiName, WifiPass, setup_perfectoMobile, connDat | ||||
|  | ||||
|         #Verifies if AP is connected to Wifi status | ||||
|         #print("Verify Wifi Connection Status..") | ||||
|         report.step_start("Verify Wifi Connected Status") | ||||
|         WifiXpath = "//*[@label='selected']/parent::*/parent::*/XCUIElementTypeStaticText[@label='"+ Wifi_AP_Name + "']" | ||||
|         elementWifName = driver.find_element_by_xpath(WifiXpath) | ||||
|      | ||||
|         try: | ||||
|             report.step_start("Verify Wifi Connected Status") | ||||
|             WifiXpath = "//*[@label='selected']/parent::*/parent::*/XCUIElementTypeStaticText[@label='"+ Wifi_AP_Name + "']" | ||||
|             elementWifName = driver.find_element_by_xpath(WifiXpath) | ||||
|         except NoSuchElementException: | ||||
|             reportFlag = False | ||||
|             assert reportFlag | ||||
|  | ||||
|         #Check AP Internet Error Msg  | ||||
|         print("Checking Internet Connection Error..") | ||||
|         report.step_start("Checking Internet Connection Error..") | ||||
| @@ -106,6 +114,8 @@ def set_APconnMobileDevice_iOS(WifiName, WifiPass, setup_perfectoMobile, connDat | ||||
|             wifiXpath2.click() | ||||
|          | ||||
|         except NoSuchElementException: | ||||
|             reportFlag = False | ||||
|             assert reportFlag | ||||
|             print("\n Can't find Wifi/AP NAME.....CheckXpath & Wifi Name") | ||||
|  | ||||
|         #Set password if Needed | ||||
| @@ -123,10 +133,17 @@ def set_APconnMobileDevice_iOS(WifiName, WifiPass, setup_perfectoMobile, connDat | ||||
|  | ||||
|         try: | ||||
|             WifiInternetErrMsg2 = driver.find_element_by_xpath("//*[@label='No Internet Connection']").text | ||||
|             reportFlag = False | ||||
|         except NoSuchElementException: | ||||
|             reportFlag = True | ||||
|             print("No Wifi-AP Error Internet Error: " + WifiName) | ||||
|     return reportFlag | ||||
|  | ||||
| def Toggle_AirplaneMode_iOS(setup_perfectoMobile, connData): | ||||
|     print("\n-----------------------") | ||||
|     print("Toggle Airplane Mode") | ||||
|     print("-----------------------") | ||||
|      | ||||
|     report = setup_perfectoMobile[1]     | ||||
|     driver = setup_perfectoMobile[0] | ||||
|     currentResult = True | ||||
| @@ -210,6 +227,10 @@ def verify_APconnMobileDevice_iOS(WifiName, setup_perfectoMobile, connData): | ||||
|         return None | ||||
|  | ||||
| def ForgetWifiConnection(setup_perfectoMobile, wifiName, connData): | ||||
|     print("\n-----------------------------") | ||||
|     print("Forget Wifi/AP Connection") | ||||
|     print("-----------------------------") | ||||
|      | ||||
|     report = setup_perfectoMobile[1]     | ||||
|     driver = setup_perfectoMobile[0] | ||||
|  | ||||
| @@ -217,7 +238,7 @@ def ForgetWifiConnection(setup_perfectoMobile, wifiName, connData): | ||||
|     print("Switching Context to Native") | ||||
|     driver.switch_to.context('NATIVE_APP') | ||||
|     contexts = driver.contexts | ||||
|     print(contexts) | ||||
|     #print(contexts) | ||||
|  | ||||
|     report.step_start("Forget Existing Wifi")    | ||||
|     openApp(connData["bundleId-iOS-Settings"], setup_perfectoMobile) | ||||
| @@ -274,6 +295,10 @@ def ForgetWifiConnection(setup_perfectoMobile, wifiName, connData): | ||||
|         elementforgetWifi.click() | ||||
|  | ||||
| def Toggle_WifiMode_iOS(setup_perfectoMobile, connData): | ||||
|     print("\n-----------------------") | ||||
|     print("Toggle Wifi Mode") | ||||
|     print("-----------------------") | ||||
|      | ||||
|     report = setup_perfectoMobile[1]     | ||||
|     driver = setup_perfectoMobile[0] | ||||
|  | ||||
| @@ -435,60 +460,59 @@ def tearDown(setup_perfectoMobile): | ||||
|             print (e.message) | ||||
|  | ||||
| def verifyUploadDownloadSpeediOS(setup_perfectoMobile, get_APToMobileDevice_data): | ||||
|         print("Verify Upload Download Speed") | ||||
|     print("\n-------------------------------------") | ||||
|     print("Verify Upload & Download Speed") | ||||
|     print("-------------------------------------") | ||||
|      | ||||
|     report = setup_perfectoMobile[1]     | ||||
|     driver = setup_perfectoMobile[0] | ||||
|     connData = get_APToMobileDevice_data | ||||
|     currentResult = True | ||||
|  | ||||
|         report = setup_perfectoMobile[1]     | ||||
|         driver = setup_perfectoMobile[0] | ||||
|         connData = get_APToMobileDevice_data | ||||
|         currentResult = True | ||||
|     contexts = driver.contexts | ||||
|     #print("Printing Context") | ||||
|     #print(contexts) | ||||
|  | ||||
|         contexts = driver.contexts | ||||
|         print("Printing Context") | ||||
|         print(contexts) | ||||
|     driver.switch_to.context('WEBVIEW_1') | ||||
|      | ||||
|   | ||||
|     print("Launching Safari") | ||||
|     report.step_start("Google Home Page")  | ||||
|     driver.get(connData["webURL"])  | ||||
|     print("Enter Search Text") | ||||
|     elementFindTxt = driver.find_element_by_xpath(connData["lblSearch"]) | ||||
|     elementFindTxt.send_keys("Internet Speed Test") | ||||
|  | ||||
|         driver.switch_to.context('WEBVIEW_1') | ||||
|     try: | ||||
|         print("Click Search Button") | ||||
|         elelSearch = driver.find_element_by_xpath("//*[@class='aajZCb']/li[1]/div[1]")   | ||||
|         elelSearch.click() | ||||
|     except NoSuchElementException: | ||||
|         currentResult = False | ||||
|         print("Search Drop Down not active...") | ||||
|  | ||||
|     print("Click Run Speed Test Button...") | ||||
|     report.step_start("Click Run Speed Test Button")   | ||||
|     driver.find_element_by_xpath(connData["BtnRunSpeedTest"]).click() | ||||
|  | ||||
|     #Get upload/Download Speed | ||||
|     try: | ||||
|         report.step_start("Get upload/Download Speed")    | ||||
|         time.sleep(60) | ||||
|         downloadMbps = driver.find_element_by_xpath(connData["downloadMbps"]) | ||||
|         downloadSpeed = downloadMbps.text | ||||
|         print("Download: " + downloadSpeed + " Mbps") | ||||
|  | ||||
|         UploadMbps = driver.find_element_by_xpath(connData["UploadMbps"]) | ||||
|         uploadSpeed = UploadMbps.text | ||||
|         print("Upload: " + uploadSpeed + " Mbps") | ||||
|          | ||||
|         try:   | ||||
|             print("Launching Safari") | ||||
|             report.step_start("Google Home Page")  | ||||
|             driver.get(connData["webURL"])  | ||||
|             print("Enter Search Text") | ||||
|             elementFindTxt = driver.find_element_by_xpath(connData["lblSearch"]) | ||||
|             elementFindTxt.send_keys("Internet Speed Test") | ||||
|         print("Access Point Verification Completed Successfully") | ||||
|  | ||||
|             try: | ||||
|                 print("Click Search Button") | ||||
|                 elelSearch = driver.find_element_by_xpath("//*[@class='aajZCb']/li[1]/div[1]")   | ||||
|                 elelSearch.click() | ||||
|             except NoSuchElementException: | ||||
|                 currentResult = False | ||||
|                 print("Search Drop Down not active...") | ||||
|  | ||||
|             print("Click Run Speed Test Button...") | ||||
|             report.step_start("Click Run Speed Test Button")   | ||||
|             driver.find_element_by_xpath(connData["BtnRunSpeedTest"]).click() | ||||
|  | ||||
|             #Get upload/Download Speed | ||||
|             try: | ||||
|                 report.step_start("Get upload/Download Speed")    | ||||
|                 time.sleep(60) | ||||
|                 downloadMbps = driver.find_element_by_xpath(connData["downloadMbps"]) | ||||
|                 downloadSpeed = downloadMbps.text | ||||
|                 print("Download: " + downloadSpeed + " Mbps") | ||||
|  | ||||
|                 UploadMbps = driver.find_element_by_xpath(connData["UploadMbps"]) | ||||
|                 uploadSpeed = UploadMbps.text | ||||
|                 print("Upload: " + uploadSpeed + " Mbps") | ||||
|                  | ||||
|                 print("Access Point Verification Completed Successfully") | ||||
|  | ||||
|             except NoSuchElementException: | ||||
|                 print("Access Point Verification NOT Completed, checking Connection....") | ||||
|                 currentResult = False | ||||
|         except Exception as e: | ||||
|             print (e.message) | ||||
|  | ||||
|            | ||||
|         return currentResult | ||||
|     except NoSuchElementException: | ||||
|         print("Access Point Verification NOT Completed, checking Connection....") | ||||
|         currentResult = False | ||||
|          | ||||
|     return currentResult | ||||
|  | ||||
|        | ||||
| @@ -8,6 +8,6 @@ if [ -d ../wlan-lanforge-scripts ] | ||||
| then | ||||
|     rm -fr lanforge/lanforge-scripts | ||||
|  | ||||
|     cp -ar ../wlan-lanforge-scripts lanforge/lanforge-scripts | ||||
|     cp -a ../wlan-lanforge-scripts lanforge/lanforge-scripts | ||||
| fi | ||||
|  | ||||
|   | ||||
| @@ -49,9 +49,35 @@ def pytest_addoption(parser): | ||||
|     parser.addini("tr_pass", "Testrail Password") | ||||
|     parser.addini("tr_project_id", "Testrail Project ID") | ||||
|     parser.addini("milestone", "milestone Id") | ||||
|  | ||||
|     parser.addini("num_stations", "Number of Stations/Clients for testing") | ||||
|  | ||||
|     #Perfecto Parameters | ||||
|     parser.addini("perfectoURL", "Cloud URL") | ||||
|     parser.addini("securityToken", "Security Token") | ||||
|     parser.addini("platformName-iOS", "iOS Platform") | ||||
|     parser.addini("platformName-android", "Android Platform") | ||||
|     parser.addini("model-iOS", "iOS Devices") | ||||
|     parser.addini("model-android", "Android Devices") | ||||
|     parser.addini("bundleId-iOS", "iOS Devices") | ||||
|     parser.addini("bundleId-iOS-Settings", "iOS Settings App") | ||||
|     parser.addini("appPackage-android", "Android Devices") | ||||
|     parser.addini("bundleId-iOS-Safari", "Safari BundleID") | ||||
|     parser.addini("wifi-SSID-2g-Pwd", "Wifi 2g Password") | ||||
|     parser.addini("bundleId-iOS-Ping", "Ping Bundle ID") | ||||
|     parser.addini("browserType-iOS", "Mobile Browser Name")     | ||||
|     parser.addini("projectName", "Project Name") | ||||
|     parser.addini("projectVersion", "Project Version") | ||||
|     parser.addini("jobName", "CI Job Name") | ||||
|     parser.addini("jobNumber", "CI Job Number") | ||||
|     parser.addini("reportTags", "Report Tags") | ||||
|     parser.addoption( | ||||
|         "--access-points-perfecto", | ||||
|         # nargs="+", | ||||
|         default=["Perfecto"], | ||||
|         help="list of access points to test" | ||||
|     ) | ||||
|  | ||||
|  | ||||
|     # change behaviour | ||||
|     parser.addoption( | ||||
|         "--skip-upgrade", | ||||
|   | ||||
| @@ -11,31 +11,43 @@ from appium import webdriver | ||||
| from selenium.common.exceptions import NoSuchElementException | ||||
|  | ||||
| import sys | ||||
| import allure | ||||
|  | ||||
| if 'perfecto_libs' not in sys.path: | ||||
|     sys.path.append(f'../libs/perfecto_libs') | ||||
|  | ||||
| from android_lib import closeApp, verifyUploadDownloadSpeed_android, set_APconnMobileDevice_android, Toggle_AirplaneMode_android, ForgetWifiConnection, openApp, setup_perfectoMobile_android | ||||
|  | ||||
| setup_params_general = { | ||||
|     "mode": "NAT", | ||||
|     "ssid_modes": { | ||||
|         "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": {}, | ||||
|     "radius": False | ||||
| } | ||||
|  | ||||
| @pytest.mark.AccessPointConnectionAndroid | ||||
| @pytest.mark.wifi5 | ||||
| @pytest.mark.wifi6 | ||||
| @pytest.mark.interop_and | ||||
| @allure.feature("NAT MODE CLIENT CONNECTIVITY") | ||||
| @pytest.mark.parametrize( | ||||
|     'setup_profiles, create_profiles', | ||||
|     [(["NAT"], ["NAT"])], | ||||
|     'setup_profiles', | ||||
|     [setup_params_general], | ||||
|     indirect=True, | ||||
|     scope="class" | ||||
| ) | ||||
|  | ||||
| @pytest.mark.usefixtures("setup_profiles") | ||||
| @pytest.mark.usefixtures("create_profiles") | ||||
| class TestAcessPointConnection(object): | ||||
|  | ||||
|     @pytest.mark.fiveg | ||||
|     @pytest.mark.wpa2_personal | ||||
|     def test_AccessPointConnection_5g_WPA2_Personal(self, setup_profile_data, get_APToMobileDevice_data, setup_perfectoMobile_android): | ||||
|     def test_AccessPointConnection_5g_WPA2_Personal(self, get_APToMobileDevice_data, setup_perfectoMobile_android): | ||||
|          | ||||
|         profile_data = setup_profile_data["NAT"]["WPA2_P"]["5G"]   | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
| @@ -59,9 +71,9 @@ class TestAcessPointConnection(object): | ||||
|  | ||||
|     @pytest.mark.twog | ||||
|     @pytest.mark.wpa2_personal | ||||
|     def test_AccessPointConnection_2g_WPA2_Personal(self, setup_profile_data, get_ToggleAirplaneMode_data, setup_perfectoMobile_android): | ||||
|     def test_AccessPointConnection_2g_WPA2_Personal(self, get_ToggleAirplaneMode_data, setup_perfectoMobile_android): | ||||
|          | ||||
|         profile_data = setup_profile_data["NAT"]["WPA2_P"]["2G"]   | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]  | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
| @@ -85,9 +97,9 @@ class TestAcessPointConnection(object): | ||||
|  | ||||
|     @pytest.mark.fiveg | ||||
|     @pytest.mark.wpa | ||||
|     def test_AccessPointConnection_5g_WPA(self, setup_profile_data, get_ToggleAirplaneMode_data, setup_perfectoMobile_android): | ||||
|     def test_AccessPointConnection_5g_WPA(self, get_ToggleAirplaneMode_data, setup_perfectoMobile_android): | ||||
|          | ||||
|         profile_data = setup_profile_data["NAT"]["WPA"]["5G"]   | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa"][1] | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
| @@ -111,9 +123,9 @@ class TestAcessPointConnection(object): | ||||
|  | ||||
|     @pytest.mark.twog | ||||
|     @pytest.mark.wpa | ||||
|     def test_AccessPointConnection_2g_WPA(self, setup_profile_data, get_ToggleAirplaneMode_data, setup_perfectoMobile_android): | ||||
|     def test_AccessPointConnection_2g_WPA(self, get_ToggleAirplaneMode_data, setup_perfectoMobile_android): | ||||
|          | ||||
|         profile_data = setup_profile_data["NAT"]["WPA"]["2G"]   | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa"][0] | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
|   | ||||
| @@ -11,31 +11,43 @@ from appium import webdriver | ||||
| from selenium.common.exceptions import NoSuchElementException | ||||
|  | ||||
| import sys | ||||
| import allure | ||||
|  | ||||
| if 'perfecto_libs' not in sys.path: | ||||
|     sys.path.append(f'../libs/perfecto_libs') | ||||
|  | ||||
| from android_lib import closeApp, set_APconnMobileDevice_android, Toggle_AirplaneMode_android, ForgetWifiConnection, openApp, setup_perfectoMobile_android | ||||
|  | ||||
| setup_params_general = { | ||||
|     "mode": "NAT", | ||||
|     "ssid_modes": { | ||||
|         "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": {}, | ||||
|     "radius": False | ||||
| } | ||||
|  | ||||
| @pytest.mark.ToggleAirplaneModeAndroid | ||||
| @pytest.mark.wifi5 | ||||
| @pytest.mark.wifi6 | ||||
| @pytest.mark.interop_and | ||||
| @allure.feature("NAT MODE CLIENT CONNECTIVITY") | ||||
| @pytest.mark.parametrize( | ||||
|     'setup_profiles, create_profiles', | ||||
|     [(["NAT"], ["NAT"])], | ||||
|     'setup_profiles', | ||||
|     [setup_params_general], | ||||
|     indirect=True, | ||||
|     scope="class" | ||||
| ) | ||||
|  | ||||
| @pytest.mark.usefixtures("setup_profiles") | ||||
| @pytest.mark.usefixtures("create_profiles") | ||||
| class TestToggleAirplaneModeAndroid(object): | ||||
|  | ||||
|     @pytest.mark.fiveg | ||||
|     @pytest.mark.wpa2_personal | ||||
|     def test_ToogleAirplaneMode_5g_WPA2_Personal(self, setup_profile_data, get_ToggleAirplaneMode_data, setup_perfectoMobile_android): | ||||
|     def test_ToogleAirplaneMode_5g_WPA2_Personal(self, get_ToggleAirplaneMode_data, setup_perfectoMobile_android): | ||||
|          | ||||
|         profile_data = setup_profile_data["NAT"]["WPA2_P"]["5G"]   | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]   | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
| @@ -56,9 +68,9 @@ class TestToggleAirplaneModeAndroid(object): | ||||
|  | ||||
|     @pytest.mark.twog | ||||
|     @pytest.mark.wpa2_personal | ||||
|     def test_ToogleAirplaneMode_2g_WPA2_Personal(self, setup_profile_data, get_ToggleAirplaneMode_data, setup_perfectoMobile_android): | ||||
|     def test_ToogleAirplaneMode_2g_WPA2_Personal(self, get_ToggleAirplaneMode_data, setup_perfectoMobile_android): | ||||
|          | ||||
|         profile_data = setup_profile_data["NAT"]["WPA2_P"]["2G"]   | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]  | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
| @@ -79,9 +91,9 @@ class TestToggleAirplaneModeAndroid(object): | ||||
|  | ||||
|     @pytest.mark.fiveg | ||||
|     @pytest.mark.wpa | ||||
|     def test_ToogleAirplaneMode_5g_WPA(self, setup_profile_data, get_ToggleAirplaneMode_data, setup_perfectoMobile_android): | ||||
|     def test_ToogleAirplaneMode_5g_WPA(self, get_ToggleAirplaneMode_data, setup_perfectoMobile_android): | ||||
|          | ||||
|         profile_data = setup_profile_data["NAT"]["WPA"]["5G"]   | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa"][1] | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
| @@ -102,9 +114,9 @@ class TestToggleAirplaneModeAndroid(object): | ||||
|  | ||||
|     @pytest.mark.twog | ||||
|     @pytest.mark.wpa | ||||
|     def test_ToogleAirplaneMode_2g_WPA(self, setup_profile_data, get_ToggleAirplaneMode_data, setup_perfectoMobile_android): | ||||
|     def test_ToogleAirplaneMode_2g_WPA(self, get_ToggleAirplaneMode_data, setup_perfectoMobile_android): | ||||
|          | ||||
|         profile_data = setup_profile_data["NAT"]["WPA"]["2G"]   | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa"][0]  | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
|   | ||||
| @@ -0,0 +1,138 @@ | ||||
| from logging import exception | ||||
| import unittest | ||||
| import warnings | ||||
| from perfecto.test import TestResultFactory | ||||
| import pytest | ||||
| import sys | ||||
| import time | ||||
| from selenium.common.exceptions import NoSuchElementException | ||||
| from selenium.webdriver.common.by import By | ||||
| from appium import webdriver | ||||
| from selenium.common.exceptions import NoSuchElementException | ||||
|  | ||||
| import sys | ||||
| import allure | ||||
|  | ||||
| if 'perfecto_libs' not in sys.path: | ||||
|     sys.path.append(f'../libs/perfecto_libs') | ||||
|  | ||||
| from android_lib import closeApp, set_APconnMobileDevice_android, verifyUploadDownloadSpeed_android, Toggle_AirplaneMode_android, ForgetWifiConnection, openApp, setup_perfectoMobile_android | ||||
|  | ||||
| setup_params_general = { | ||||
|     "mode": "NAT", | ||||
|     "ssid_modes": { | ||||
|         "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": {}, | ||||
|     "radius": False | ||||
| } | ||||
|  | ||||
| @pytest.mark.OpenRoamingAndroid | ||||
| #@pytest.mark.interop_and | ||||
| @allure.feature("NAT MODE CLIENT CONNECTIVITY") | ||||
| @pytest.mark.parametrize( | ||||
|     'setup_profiles', | ||||
|     [setup_params_general], | ||||
|     indirect=True, | ||||
|     scope="class" | ||||
| ) | ||||
|   | ||||
| @pytest.mark.usefixtures("setup_profiles") | ||||
| class TestOpenRoaming(object): | ||||
|  | ||||
|     @pytest.mark.fiveg | ||||
|     @pytest.mark.wpa2_personal | ||||
|     def test_OpenRoaming_5g_WPA2_Personal(self, get_APToMobileDevice_data, setup_perfectoMobile_android): | ||||
|          | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
|         print ("SSID_PASS: " + ssidPassword) | ||||
|  | ||||
|         report = setup_perfectoMobile_android[1] | ||||
|         driver = setup_perfectoMobile_android[0] | ||||
|         connData = get_APToMobileDevice_data | ||||
|  | ||||
|         #Set Wifi/AP Mode | ||||
|         set_APconnMobileDevice_android(ssidName, ssidPassword, setup_perfectoMobile_android, connData) | ||||
|  | ||||
|         #Install Profile  | ||||
|  | ||||
|         #Verify Upload download Speed from device Selection | ||||
|         assert verifyUploadDownloadSpeed_android(setup_perfectoMobile_android, connData) | ||||
|  | ||||
|         #ForgetWifi | ||||
|         ForgetWifiConnection(setup_perfectoMobile_android, ssidName, connData) | ||||
|  | ||||
|     @pytest.mark.twog | ||||
|     @pytest.mark.wpa2_personal | ||||
|     def test_OpenRoaming_2g_WPA2_Personal(self, get_APToMobileDevice_data, setup_perfectoMobile_android): | ||||
|              | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]   | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
|         print ("SSID_PASS: " + ssidPassword) | ||||
|  | ||||
|         report = setup_perfectoMobile_android[1] | ||||
|         driver = setup_perfectoMobile_android[0] | ||||
|         connData = get_APToMobileDevice_data | ||||
|  | ||||
|         #Set Wifi/AP Mode | ||||
|         set_APconnMobileDevice_android(ssidName, ssidPassword, setup_perfectoMobile_android, connData) | ||||
|  | ||||
|         #Toggle AirplaneMode | ||||
|         assert Toggle_AirplaneMode_android(setup_perfectoMobile_android, connData) | ||||
|  | ||||
|         #ForgetWifi | ||||
|         ForgetWifiConnection(setup_perfectoMobile_android, ssidName, connData) | ||||
|  | ||||
|     @pytest.mark.twog | ||||
|     @pytest.mark.wpa | ||||
|     def test_OpenRoaming_2g_WPA(self, get_APToMobileDevice_data, setup_perfectoMobile_android): | ||||
|              | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa"][0]  | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
|         print ("SSID_PASS: " + ssidPassword) | ||||
|  | ||||
|         report = setup_perfectoMobile_android[1] | ||||
|         driver = setup_perfectoMobile_android[0] | ||||
|         connData = get_APToMobileDevice_data | ||||
|  | ||||
|         #Set Wifi/AP Mode | ||||
|         set_APconnMobileDevice_android(ssidName, ssidPassword, setup_perfectoMobile_android, connData) | ||||
|  | ||||
|         #Toggle AirplaneMode | ||||
|         assert Toggle_AirplaneMode_android(setup_perfectoMobile_android, connData) | ||||
|  | ||||
|         #ForgetWifi | ||||
|         ForgetWifiConnection(setup_perfectoMobile_android, ssidName, connData) | ||||
|  | ||||
|     @pytest.mark.fiveg | ||||
|     @pytest.mark.wpa | ||||
|     def test_OpenRoaming_5g_WPA(self, get_APToMobileDevice_data, setup_perfectoMobile_android): | ||||
|              | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa"][1] | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
|         print ("SSID_PASS: " + ssidPassword) | ||||
|  | ||||
|         report = setup_perfectoMobile_android[1] | ||||
|         driver = setup_perfectoMobile_android[0] | ||||
|         connData = get_APToMobileDevice_data | ||||
|  | ||||
|         #Set Wifi/AP Mode | ||||
|         set_APconnMobileDevice_android(ssidName, ssidPassword, setup_perfectoMobile_android, connData) | ||||
|  | ||||
|         #Toggle AirplaneMode | ||||
|         assert Toggle_AirplaneMode_android(setup_perfectoMobile_android, connData) | ||||
|  | ||||
|         #ForgetWifi | ||||
|         ForgetWifiConnection(setup_perfectoMobile_android, ssidName, connData) | ||||
| @@ -11,31 +11,44 @@ from appium import webdriver | ||||
| from selenium.common.exceptions import NoSuchElementException | ||||
|  | ||||
| import sys | ||||
| import allure | ||||
|  | ||||
| if 'perfecto_libs' not in sys.path: | ||||
|     sys.path.append(f'../libs/perfecto_libs') | ||||
|  | ||||
| from android_lib import closeApp, set_APconnMobileDevice_android, verifyUploadDownloadSpeed_android, Toggle_WifiMode_android, Toggle_AirplaneMode_android, ForgetWifiConnection, openApp, setup_perfectoMobile_android | ||||
|  | ||||
| setup_params_general = { | ||||
|     "mode": "NAT", | ||||
|     "ssid_modes": { | ||||
|         "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": {}, | ||||
|     "radius": False | ||||
| } | ||||
|  | ||||
|  | ||||
| @pytest.mark.PassPointConnectionAndroid | ||||
| @pytest.mark.wifi5 | ||||
| @pytest.mark.wifi6 | ||||
| @pytest.mark.interop_and | ||||
| @allure.feature("NAT MODE CLIENT CONNECTIVITY") | ||||
| @pytest.mark.parametrize( | ||||
|     'setup_profiles, create_profiles', | ||||
|     [(["NAT"], ["NAT"])], | ||||
|     'setup_profiles', | ||||
|     [setup_params_general], | ||||
|     indirect=True, | ||||
|     scope="class" | ||||
| ) | ||||
|  | ||||
| @pytest.mark.usefixtures("setup_profiles") | ||||
| @pytest.mark.usefixtures("create_profiles") | ||||
| class TestPassPointConnection(object): | ||||
|  | ||||
|     @pytest.mark.fiveg | ||||
|     @pytest.mark.wpa2_personal | ||||
|     def test_PassPointConnection_5g_WPA2_Personal(self, setup_profile_data, get_APToMobileDevice_data, setup_perfectoMobile_android): | ||||
|     def test_PassPointConnection_5g_WPA2_Personal(self, get_APToMobileDevice_data, setup_perfectoMobile_android): | ||||
|          | ||||
|         profile_data = setup_profile_data["NAT"]["WPA2_P"]["5G"]   | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]  | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
| @@ -52,16 +65,16 @@ class TestPassPointConnection(object): | ||||
|         assert verifyUploadDownloadSpeed_android(setup_perfectoMobile_android, connData) | ||||
|  | ||||
|         #Toggle Wifi Mode | ||||
|         assert Toggle_WifiMode_android(setup_perfectoMobile_android, ssidName, connData) | ||||
|         Toggle_WifiMode_android(setup_perfectoMobile_android, ssidName, connData) | ||||
|  | ||||
|         #ForgetWifi | ||||
|         ForgetWifiConnection(setup_perfectoMobile_android, ssidName, connData) | ||||
|  | ||||
|     @pytest.mark.twog | ||||
|     @pytest.mark.wpa2_personal | ||||
|     def test_PassPointConnection_2g_WPA2_Personal(self, setup_profile_data, get_ToggleAirplaneMode_data, setup_perfectoMobile_android): | ||||
|     def test_PassPointConnection_2g_WPA2_Personal(self, get_ToggleAirplaneMode_data, setup_perfectoMobile_android): | ||||
|          | ||||
|         profile_data = setup_profile_data["NAT"]["WPA2_P"]["2G"]   | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]  | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
| @@ -85,9 +98,9 @@ class TestPassPointConnection(object): | ||||
|  | ||||
|     @pytest.mark.fiveg | ||||
|     @pytest.mark.wpa | ||||
|     def test_PassPointConnection_5g_WPA(self, setup_profile_data, get_ToggleAirplaneMode_data, setup_perfectoMobile_android): | ||||
|     def test_PassPointConnection_5g_WPA(self, get_ToggleAirplaneMode_data, setup_perfectoMobile_android): | ||||
|          | ||||
|         profile_data = setup_profile_data["NAT"]["WPA"]["5G"]   | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa"][1]  | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
| @@ -111,9 +124,9 @@ class TestPassPointConnection(object): | ||||
|  | ||||
|     @pytest.mark.twog | ||||
|     @pytest.mark.wpa | ||||
|     def test_PassPointConnection_2g_WPA(self, setup_profile_data, get_ToggleAirplaneMode_data, setup_perfectoMobile_android): | ||||
|     def test_PassPointConnection_2g_WPA(self, get_ToggleAirplaneMode_data, setup_perfectoMobile_android): | ||||
|          | ||||
|         profile_data = setup_profile_data["NAT"]["WPA"]["2G"]   | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa"][0]   | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
|   | ||||
| @@ -11,31 +11,43 @@ from appium import webdriver | ||||
| from selenium.common.exceptions import NoSuchElementException | ||||
|  | ||||
| import sys | ||||
| import allure | ||||
|  | ||||
| if 'perfecto_libs' not in sys.path: | ||||
|     sys.path.append(f'../libs/perfecto_libs') | ||||
|  | ||||
| from android_lib import closeApp, set_APconnMobileDevice_android, Toggle_WifiMode_android, Toggle_AirplaneMode_android, ForgetWifiConnection, openApp, setup_perfectoMobile_android | ||||
|  | ||||
| setup_params_general = { | ||||
|     "mode": "NAT", | ||||
|     "ssid_modes": { | ||||
|         "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": {}, | ||||
|     "radius": False | ||||
| } | ||||
|  | ||||
| @pytest.mark.ToggleWifiModeAndroid | ||||
| @pytest.mark.wifi5 | ||||
| @pytest.mark.wifi6 | ||||
| @pytest.mark.interop_and | ||||
| @allure.feature("NAT MODE CLIENT CONNECTIVITY") | ||||
| @pytest.mark.parametrize( | ||||
|     'setup_profiles, create_profiles', | ||||
|     [(["NAT"], ["NAT"])], | ||||
|     'setup_profiles', | ||||
|     [setup_params_general], | ||||
|     indirect=True, | ||||
|     scope="class" | ||||
| ) | ||||
|  | ||||
| @pytest.mark.usefixtures("setup_profiles") | ||||
| @pytest.mark.usefixtures("create_profiles") | ||||
| class TestToggleWifiMode(object): | ||||
|  | ||||
|     @pytest.mark.fiveg | ||||
|     @pytest.mark.wpa2_personal | ||||
|     def test_ToogleWifiMode_5g_WPA2_Personal(self, setup_profile_data, get_ToggleWifiMode_data, setup_perfectoMobile_android): | ||||
|     def test_ToogleWifiMode_5g_WPA2_Personal(self, get_ToggleWifiMode_data, setup_perfectoMobile_android): | ||||
|           | ||||
|         profile_data = setup_profile_data["NAT"]["WPA2_P"]["5G"]   | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
| @@ -49,16 +61,16 @@ class TestToggleWifiMode(object): | ||||
|         set_APconnMobileDevice_android(ssidName, ssidPassword, setup_perfectoMobile_android, connData) | ||||
|  | ||||
|         #Toggle Wifi Mode | ||||
|         assert Toggle_WifiMode_android(setup_perfectoMobile_android, ssidName, connData) | ||||
|         Toggle_WifiMode_android(setup_perfectoMobile_android, ssidName, connData) | ||||
|      | ||||
|         #ForgetWifi | ||||
|         ForgetWifiConnection(setup_perfectoMobile_android, ssidName, connData) | ||||
|  | ||||
|     @pytest.mark.twog | ||||
|     @pytest.mark.wpa2_personal | ||||
|     def test_ToogleWifiMode_2g_WPA2_Personal(self, setup_profile_data, get_ToggleWifiMode_data, setup_perfectoMobile_android): | ||||
|     def test_ToogleWifiMode_2g_WPA2_Personal(self, get_ToggleWifiMode_data, setup_perfectoMobile_android): | ||||
|          | ||||
|         profile_data = setup_profile_data["NAT"]["WPA2_P"]["2G"]   | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]  | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
| @@ -79,9 +91,9 @@ class TestToggleWifiMode(object): | ||||
|  | ||||
|     @pytest.mark.fiveg | ||||
|     @pytest.mark.wpa | ||||
|     def test_ToogleWifiMode_5g_WPA(self, setup_profile_data, get_ToggleWifiMode_data, setup_perfectoMobile_android): | ||||
|     def test_ToogleWifiMode_5g_WPA(self, get_ToggleWifiMode_data, setup_perfectoMobile_android): | ||||
|           | ||||
|         profile_data = setup_profile_data["NAT"]["WPA"]["5G"]   | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa"][1] | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
| @@ -102,9 +114,9 @@ class TestToggleWifiMode(object): | ||||
|  | ||||
|     @pytest.mark.twog | ||||
|     @pytest.mark.wpa | ||||
|     def test_ToogleWifiMode_2g_WPA(self, setup_profile_data, get_ToggleWifiMode_data, setup_perfectoMobile_android): | ||||
|     def test_ToogleWifiMode_2g_WPA(self, get_ToggleWifiMode_data, setup_perfectoMobile_android): | ||||
|           | ||||
|         profile_data = setup_profile_data["NAT"]["WPA"]["2G"]   | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa"][0] | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
|   | ||||
| @@ -11,32 +11,43 @@ from appium import webdriver | ||||
| from selenium.common.exceptions import NoSuchElementException | ||||
|  | ||||
| import sys | ||||
| #pytestmark = [pytest.mark.ClientConnectivity, pytest.mark.nat, pytest.mark.interop] | ||||
| import allure | ||||
|  | ||||
| if 'perfecto_libs' not in sys.path: | ||||
|     sys.path.append(f'../libs/perfecto_libs') | ||||
|  | ||||
| from android_lib import closeApp, set_APconnMobileDevice_android, verifyUploadDownloadSpeed_android, Toggle_AirplaneMode_android, ForgetWifiConnection, openApp, setup_perfectoMobile_android | ||||
|  | ||||
| setup_params_general = { | ||||
|     "mode": "NAT", | ||||
|     "ssid_modes": { | ||||
|         "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": {}, | ||||
|     "radius": False | ||||
| } | ||||
|  | ||||
| @pytest.mark.ClientConnectivityAndroid | ||||
| @pytest.mark.wifi5 | ||||
| @pytest.mark.wifi6 | ||||
| @pytest.mark.interop_and | ||||
| @allure.feature("NAT MODE CLIENT CONNECTIVITY") | ||||
| @pytest.mark.parametrize( | ||||
|     'setup_profiles, create_profiles', | ||||
|     [(["NAT"], ["NAT"])], | ||||
|     'setup_profiles', | ||||
|     [setup_params_general], | ||||
|     indirect=True, | ||||
|     scope="class" | ||||
| ) | ||||
|   | ||||
| @pytest.mark.usefixtures("setup_profiles") | ||||
| @pytest.mark.usefixtures("create_profiles") | ||||
| class TestNatMode(object): | ||||
|  | ||||
|     @pytest.mark.fiveg | ||||
|     @pytest.mark.wpa2_personal | ||||
|     def test_ClientConnectivity_5g_WPA2_Personal(self, setup_profile_data, get_APToMobileDevice_data, setup_perfectoMobile_android): | ||||
|     def test_ClientConnectivity_5g_WPA2_Personal(self, get_APToMobileDevice_data, setup_perfectoMobile_android): | ||||
|          | ||||
|         profile_data = setup_profile_data["NAT"]["WPA2_P"]["5G"]   | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
| @@ -57,9 +68,9 @@ class TestNatMode(object): | ||||
|  | ||||
|     @pytest.mark.twog | ||||
|     @pytest.mark.wpa2_personal | ||||
|     def test_ClientConnectivity_2g_WPA2_Personal(self, setup_profile_data, get_APToMobileDevice_data, setup_perfectoMobile_android): | ||||
|     def test_ClientConnectivity_2g_WPA2_Personal(self, get_APToMobileDevice_data, setup_perfectoMobile_android): | ||||
|              | ||||
|         profile_data = setup_profile_data["NAT"]["WPA2_P"]["2G"]   | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]   | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
| @@ -80,9 +91,9 @@ class TestNatMode(object): | ||||
|  | ||||
|     @pytest.mark.twog | ||||
|     @pytest.mark.wpa | ||||
|     def test_ClientConnectivity_2g_WPA(self, setup_profile_data, get_APToMobileDevice_data, setup_perfectoMobile_android): | ||||
|     def test_ClientConnectivity_2g_WPA(self, get_APToMobileDevice_data, setup_perfectoMobile_android): | ||||
|              | ||||
|         profile_data = setup_profile_data["NAT"]["WPA"]["2G"]   | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa"][0]  | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
| @@ -103,9 +114,9 @@ class TestNatMode(object): | ||||
|  | ||||
|     @pytest.mark.fiveg | ||||
|     @pytest.mark.wpa | ||||
|     def test_ClientConnectivity_5g_WPA(self, setup_profile_data, get_APToMobileDevice_data, setup_perfectoMobile_android): | ||||
|     def test_ClientConnectivity_5g_WPA(self, get_APToMobileDevice_data, setup_perfectoMobile_android): | ||||
|              | ||||
|         profile_data = setup_profile_data["NAT"]["WPA"]["5G"]   | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa"][1] | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
|   | ||||
| @@ -44,8 +44,6 @@ from configuration import CONFIGURATION | ||||
|  | ||||
| from urllib3 import exceptions | ||||
|  | ||||
|  | ||||
|  | ||||
| @pytest.fixture(scope="class") | ||||
| def setup_perfectoMobileWeb(request): | ||||
|     from selenium import webdriver | ||||
| @@ -110,8 +108,6 @@ def setup_perfectoMobile_iOS(request): | ||||
|     warnings.simplefilter("ignore", ResourceWarning) | ||||
|     urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning) | ||||
|     | ||||
|      | ||||
|  | ||||
|     capabilities = { | ||||
|             'platformName': request.config.getini("platformName-iOS"), | ||||
|             'model': request.config.getini("model-iOS"), | ||||
| @@ -119,8 +115,8 @@ def setup_perfectoMobile_iOS(request): | ||||
|             #'automationName' : 'Appium', | ||||
|             'securityToken' : request.config.getini("securityToken"),   | ||||
|             'useAppiumForWeb' : 'false', | ||||
|             'useAppiumForHybrid' : 'false', | ||||
|             #'bundleId' : request.config.getini("bundleId-iOS"), | ||||
|             'useAppiumForHybrid' : 'false', | ||||
|     } | ||||
|  | ||||
|     driver = webdriver.Remote('https://'+request.config.getini("perfectoURL")+'.perfectomobile.com/nexperience/perfectomobile/wd/hub', capabilities) | ||||
| @@ -128,9 +124,14 @@ def setup_perfectoMobile_iOS(request): | ||||
|     | ||||
|     TestCaseFullName = os.environ.get('PYTEST_CURRENT_TEST').split(':')[-1].split(' ')[0] | ||||
|     nCurrentTestMethodNameSplit = re.sub(r'\[.*?\]\ *', "", TestCaseFullName) | ||||
|     TestCaseName = nCurrentTestMethodNameSplit.removeprefix('test_') | ||||
|     #print ("\nTestCaseName: " + TestCaseName) | ||||
|      | ||||
|     try: | ||||
|         TestCaseName = nCurrentTestMethodNameSplit.removeprefix('test_') | ||||
|         print ("\nTestCaseName: " + TestCaseName) | ||||
|     except Exception as e: | ||||
|         TestCaseName = nCurrentTestMethodNameSplit | ||||
|         print("\nUpgrade Python to 3.9 to avoid test_ string in your test case name, see below URL") | ||||
|         print("https://www.andreagrandi.it/2020/10/11/python39-introduces-removeprefix-removesuffix/") | ||||
|          | ||||
|     projectname = request.config.getini("projectName") | ||||
|     projectversion = request.config.getini("projectVersion") | ||||
|     jobname = request.config.getini("jobName") | ||||
| @@ -145,12 +146,36 @@ def setup_perfectoMobile_iOS(request): | ||||
|  | ||||
|     def teardown(): | ||||
|         try: | ||||
|             print(" -- Tear Down --")      | ||||
|             reporting_client.test_stop(TestResultFactory.create_success()) | ||||
|             print('Report-Url: ' + reporting_client.report_url() + '\n') | ||||
|             print("\n\n---------- Tear Down ----------") | ||||
|      | ||||
|             testFailed = request.session.testsfailed | ||||
|             if testFailed>0: | ||||
|                 print ("Test Case Failure, please check report link: " + testCaseName) | ||||
|                 reporting_client.test_stop(TestResultFactory.create_failure("Exception See Test Case")) | ||||
|                 #seen = {None} | ||||
|                 #session = request.node | ||||
|                 #print(session) | ||||
|             elif testFailed<=0: | ||||
|                 reporting_client.test_stop(TestResultFactory.create_success()) | ||||
|                  | ||||
|             #amount = len(request.session.items) | ||||
|             #print("Test Session Items: ") | ||||
|             #print(amount) | ||||
|  | ||||
|             #tests_count = request.session.testscollected | ||||
|             #print("Test Collected: ") | ||||
|             #print(tests_count) | ||||
|  | ||||
|             print('Report-Url: ' + reporting_client.report_url()) | ||||
|             print("----------------------------------------------------------") | ||||
|             driver.close() | ||||
|         except Exception as e: | ||||
|             print(" -- Exception Not Able To close --")     | ||||
|             print(" -- Exception While Tear Down --")     | ||||
|             reporting_client.test_stop(TestResultFactory.create_failure("Exception")) | ||||
|             print('Report-Url-Failure: ' + reporting_client.report_url() + '\n') | ||||
|              | ||||
|             driver.close() | ||||
|             | ||||
|             print (e.message) | ||||
|         finally: | ||||
|             try: | ||||
| @@ -722,3 +747,15 @@ def update_ssid(request, instantiate_profile, setup_profile_data): | ||||
|         requested_profile[3] | ||||
|     time.sleep(90) | ||||
|     yield status | ||||
|  | ||||
|  | ||||
| #@pytest.fixture(scope="module", autouse=True) | ||||
| def failure_tracking_fixture(request): | ||||
|     tests_failed_before_module = request.session.testsfailed | ||||
|     print("\n\ntests_failed_before_module: ") | ||||
|     print(tests_failed_before_module) | ||||
|     tests_failed_during_module = request.session.testsfailed - tests_failed_before_module | ||||
|     print("tests_failed_during_module: ") | ||||
|     print(tests_failed_during_module) | ||||
|     yield tests_failed_during_module | ||||
|      | ||||
| @@ -11,31 +11,43 @@ from appium import webdriver | ||||
| from selenium.common.exceptions import NoSuchElementException | ||||
|  | ||||
| import sys | ||||
| import allure | ||||
|  | ||||
| if 'perfecto_libs' not in sys.path: | ||||
|     sys.path.append(f'../libs/perfecto_libs') | ||||
|  | ||||
| from iOS_lib import closeApp, openApp, get_WifiIPAddress_iOS, ForgetWifiConnection, ping_deftapps_iOS, Toggle_AirplaneMode_iOS, set_APconnMobileDevice_iOS, verify_APconnMobileDevice_iOS, Toggle_WifiMode_iOS, tearDown | ||||
|  | ||||
| setup_params_general = { | ||||
|     "mode": "NAT", | ||||
|     "ssid_modes": { | ||||
|         "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": {}, | ||||
|     "radius": False | ||||
| } | ||||
|  | ||||
| @pytest.mark.AccessPassPointConnectivety | ||||
| @pytest.mark.wifi5 | ||||
| @pytest.mark.wifi6 | ||||
| @pytest.mark.interop_iOS | ||||
| @allure.feature("NAT MODE CLIENT CONNECTIVITY") | ||||
| @pytest.mark.parametrize( | ||||
|     'setup_profiles, create_profiles', | ||||
|     [(["NAT"], ["NAT"])], | ||||
|     'setup_profiles', | ||||
|     [setup_params_general], | ||||
|     indirect=True, | ||||
|     scope="class" | ||||
| ) | ||||
|  | ||||
| @pytest.mark.usefixtures("setup_profiles") | ||||
| @pytest.mark.usefixtures("create_profiles") | ||||
| class TestAccessPointConnectivety(object): | ||||
|  | ||||
|     @pytest.mark.fiveg | ||||
|     @pytest.mark.wpa2_personal | ||||
|     def test_AccessPointConnection_5g_WPA2_Personal(self, setup_profile_data, get_AccessPointConn_data, setup_perfectoMobile_iOS): | ||||
|     def test_AccessPointConnection_5g_WPA2_Personal(self, get_AccessPointConn_data, setup_perfectoMobile_iOS): | ||||
|          | ||||
|         profile_data = setup_profile_data["NAT"]["WPA2_P"]["5G"]   | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
| @@ -61,9 +73,9 @@ class TestAccessPointConnectivety(object): | ||||
|  | ||||
|     @pytest.mark.twog | ||||
|     @pytest.mark.wpa2_personal | ||||
|     def test_AccessPointConnection_2g_WPA2_Personal(self, setup_profile_data, get_AccessPointConn_data, setup_perfectoMobile_iOS): | ||||
|     def test_AccessPointConnection_2g_WPA2_Personal(self, get_AccessPointConn_data, setup_perfectoMobile_iOS): | ||||
|          | ||||
|         profile_data = setup_profile_data["NAT"]["WPA2_P"]["2G"]   | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]   | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
| @@ -89,9 +101,9 @@ class TestAccessPointConnectivety(object): | ||||
|  | ||||
|     @pytest.mark.fiveg | ||||
|     @pytest.mark.wpa | ||||
|     def test_AccessPointConnection_5g_WPA(self, setup_profile_data, get_AccessPointConn_data, setup_perfectoMobile_iOS): | ||||
|     def test_AccessPointConnection_5g_WPA(self, get_AccessPointConn_data, setup_perfectoMobile_iOS): | ||||
|          | ||||
|         profile_data = setup_profile_data["NAT"]["WPA"]["5G"]   | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa"][1] | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
| @@ -117,9 +129,9 @@ class TestAccessPointConnectivety(object): | ||||
|  | ||||
|     @pytest.mark.twog | ||||
|     @pytest.mark.wpa | ||||
|     def test_AccessPointConnection_2g_WPA(self, setup_profile_data, get_AccessPointConn_data, setup_perfectoMobile_iOS): | ||||
|     def test_AccessPointConnection_2g_WPA(self, get_AccessPointConn_data, setup_perfectoMobile_iOS): | ||||
|          | ||||
|         profile_data = setup_profile_data["NAT"]["WPA"]["2G"]   | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa"][0]  | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
|   | ||||
| @@ -23,18 +23,16 @@ setup_params_general = { | ||||
|     "mode": "NAT", | ||||
|     "ssid_modes": { | ||||
|         "wpa": [{"ssid_name": "ssid_wpa_2g", "appliedRadios": ["is2dot4GHz"], "security_key": "something"}, | ||||
|                 {"ssid_name": "ssid_wpa_5g", "appliedRadios": ["is5GHzU", "is5GHz", "is5GHzL"], | ||||
|                  "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"}]}, | ||||
|             {"ssid_name": "ssid_wpa2_5g", "appliedRadios": ["is5GHzU", "is5GHz", "is5GHzL"],"security_key": "something"}]}, | ||||
|     "rf": {}, | ||||
|     "radius": False | ||||
| } | ||||
|  | ||||
|  | ||||
| @pytest.mark.ToggleAirplaneMode | ||||
| @pytest.mark.interop_iOS | ||||
| @allure.feature("NAT MODE CLIENT CONNECTIVITY") | ||||
| @pytest.mark.parametrize( | ||||
|     'setup_profiles', | ||||
| @@ -42,13 +40,13 @@ setup_params_general = { | ||||
|     indirect=True, | ||||
|     scope="class" | ||||
| ) | ||||
|  | ||||
| @pytest.mark.usefixtures("setup_profiles") | ||||
| class TestToggleAirplaneMode(object): | ||||
|  | ||||
|     @pytest.mark.fiveg | ||||
|     @pytest.mark.wpa2_personal | ||||
|     def test_ToogleAirplaneMode_5g_WPA2_Personal(self, get_ToggleAirplaneMode_data, | ||||
|                                                  setup_perfectoMobile_iOS): | ||||
|     def test_ToogleAirplaneMode_5g_WPA2_Personal(self, get_ToggleAirplaneMode_data, setup_perfectoMobile_iOS): | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
| @@ -61,7 +59,9 @@ class TestToggleAirplaneMode(object): | ||||
|  | ||||
|         # Set Wifi/AP Mode | ||||
|         set_APconnMobileDevice_iOS(ssidName, ssidPassword, setup_perfectoMobile_iOS, connData) | ||||
|  | ||||
|         #print("ReportFlag: " + resultFlag) | ||||
|         #setReportResultFlag(resultFlag) | ||||
|          | ||||
|         # Toggle AirplaneMode | ||||
|         Toggle_AirplaneMode_iOS(setup_perfectoMobile_iOS, connData) | ||||
|  | ||||
| @@ -73,9 +73,8 @@ class TestToggleAirplaneMode(object): | ||||
|  | ||||
|     @pytest.mark.twog | ||||
|     @pytest.mark.wpa2_personal | ||||
|     def test_ToogleAirplaneMode_2g_WPA2_Personal(self, setup_profile_data, get_ToggleAirplaneMode_data, | ||||
|                                                  setup_perfectoMobile_iOS): | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] | ||||
|     def test_ToogleAirplaneMode_2g_WPA2_Personal(self, get_ToggleAirplaneMode_data,setup_perfectoMobile_iOS): | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0] | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print("SSID_NAME: " + ssidName) | ||||
| @@ -87,7 +86,10 @@ class TestToggleAirplaneMode(object): | ||||
|  | ||||
|         # Set Wifi/AP Mode | ||||
|         set_APconnMobileDevice_iOS(ssidName, ssidPassword, setup_perfectoMobile_iOS, connData) | ||||
|  | ||||
|         #print("ResultFlag: " + resultFlag) | ||||
|        # print(resultFlag) | ||||
|        # reportResultFlag.reportFlag = resultFlag | ||||
|          | ||||
|         # Toggle AirplaneMode | ||||
|         Toggle_AirplaneMode_iOS(setup_perfectoMobile_iOS, connData) | ||||
|  | ||||
| @@ -99,8 +101,8 @@ class TestToggleAirplaneMode(object): | ||||
|  | ||||
|     @pytest.mark.fiveg | ||||
|     @pytest.mark.wpa | ||||
|     def test_ToogleAirplaneMode_5g_WPA(self, setup_profile_data, get_ToggleAirplaneMode_data, setup_perfectoMobile_iOS): | ||||
|         profile_data = setup_profile_data["NAT"]["WPA"]["5G"] | ||||
|     def test_ToogleAirplaneMode_5g_WPA(self, get_ToggleAirplaneMode_data, setup_perfectoMobile_iOS): | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa"][1] | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print("SSID_NAME: " + ssidName) | ||||
| @@ -124,8 +126,8 @@ class TestToggleAirplaneMode(object): | ||||
|  | ||||
|     @pytest.mark.twog | ||||
|     @pytest.mark.wpa | ||||
|     def test_ToogleAirplaneMode_2g_WPA(self, setup_profile_data, get_ToggleAirplaneMode_data, setup_perfectoMobile_iOS): | ||||
|         profile_data = setup_profile_data["NAT"]["WPA"]["2G"] | ||||
|     def test_ToogleAirplaneMode_2g_WPA(self, get_ToggleAirplaneMode_data, setup_perfectoMobile_iOS): | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa"][0] | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print("SSID_NAME: " + ssidName) | ||||
|   | ||||
							
								
								
									
										138
									
								
								tests/e2e/interOp/iOS/OpenRoamingPassPoint/test_OpenRoaming.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										138
									
								
								tests/e2e/interOp/iOS/OpenRoamingPassPoint/test_OpenRoaming.py
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,138 @@ | ||||
| from logging import exception | ||||
| import unittest | ||||
| import warnings | ||||
| from perfecto.test import TestResultFactory | ||||
| import pytest | ||||
| import sys | ||||
| import time | ||||
| from selenium.common.exceptions import NoSuchElementException | ||||
| from selenium.webdriver.common.by import By | ||||
| from appium import webdriver | ||||
| from selenium.common.exceptions import NoSuchElementException | ||||
|  | ||||
| import sys | ||||
| import allure | ||||
|  | ||||
| if 'perfecto_libs' not in sys.path: | ||||
|     sys.path.append(f'../libs/perfecto_libs') | ||||
|  | ||||
| from iOS_lib import closeApp, openApp, verifyUploadDownloadSpeediOS, ForgetWifiConnection, Toggle_AirplaneMode_iOS, set_APconnMobileDevice_iOS, verify_APconnMobileDevice_iOS, Toggle_WifiMode_iOS, tearDown | ||||
|  | ||||
| setup_params_general = { | ||||
|     "mode": "NAT", | ||||
|     "ssid_modes": { | ||||
|         "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": {}, | ||||
|     "radius": False | ||||
| } | ||||
|  | ||||
| @pytest.mark.OpenRoaming | ||||
| #@pytest.mark.interop_iOS | ||||
| @allure.feature("NAT MODE CLIENT CONNECTIVITY") | ||||
|  | ||||
| @pytest.mark.parametrize( | ||||
|     'setup_profiles', | ||||
|     [setup_params_general], | ||||
|     indirect=True, | ||||
|    scope="class" | ||||
| ) | ||||
| @pytest.mark.usefixtures("setup_profiles") | ||||
| class TestOpenRoaming(object): | ||||
|  | ||||
|     @pytest.mark.fiveg | ||||
|     @pytest.mark.wpa2_personal | ||||
|     def test_OpenRoaming_5g_WPA2_Personal(self, get_APToMobileDevice_data, setup_perfectoMobile_iOS): | ||||
|          | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]  | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
|         print ("SSID_PASS: " + ssidPassword) | ||||
|  | ||||
|         report = setup_perfectoMobile_iOS[1] | ||||
|         driver = setup_perfectoMobile_iOS[0] | ||||
|         connData = get_APToMobileDevice_data | ||||
|  | ||||
|         #Set Wifi/AP Mode | ||||
|         set_APconnMobileDevice_iOS(ssidName, ssidPassword, setup_perfectoMobile_iOS, connData) | ||||
|  | ||||
|         #Install Profile  | ||||
|  | ||||
|         #Verify Upload download Speed from device Selection | ||||
|         verifyUploadDownloadSpeediOS(setup_perfectoMobile_iOS, connData) | ||||
|  | ||||
|         #ForgetWifi | ||||
|         ForgetWifiConnection(setup_perfectoMobile_iOS, ssidName, connData) | ||||
|  | ||||
|     @pytest.mark.twog | ||||
|     @pytest.mark.wpa2_personal | ||||
|     def test_OpenRoaming_2g_WPA2_Personal(self, get_APToMobileDevice_data, setup_perfectoMobileWeb): | ||||
|              | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0] | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
|         print ("SSID_PASS: " + ssidPassword) | ||||
|  | ||||
|         report = setup_perfectoMobileWeb[1] | ||||
|         driver = setup_perfectoMobileWeb[0] | ||||
|         connData = get_APToMobileDevice_data | ||||
|  | ||||
|         #Set Wifi/AP Mode | ||||
|         set_APconnMobileDevice_iOS(ssidName, ssidPassword, setup_perfectoMobileWeb, connData) | ||||
|  | ||||
|         #Verify Upload download Speed from device Selection | ||||
|         assert verifyUploadDownloadSpeediOS(setup_perfectoMobileWeb, connData) | ||||
|  | ||||
|         #ForgetWifi | ||||
|         ForgetWifiConnection(setup_perfectoMobileWeb, ssidName, connData) | ||||
|  | ||||
|     @pytest.mark.twog | ||||
|     @pytest.mark.wpa | ||||
|     def test_OpenRoaming_2g_WPA(self, get_APToMobileDevice_data, setup_perfectoMobileWeb): | ||||
|              | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa"][0] | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
|         print ("SSID_PASS: " + ssidPassword) | ||||
|  | ||||
|         report = setup_perfectoMobileWeb[1] | ||||
|         driver = setup_perfectoMobileWeb[0] | ||||
|         connData = get_APToMobileDevice_data | ||||
|  | ||||
|         #Set Wifi/AP Mode | ||||
|         set_APconnMobileDevice_iOS(ssidName, ssidPassword, setup_perfectoMobileWeb, connData) | ||||
|  | ||||
|         #Verify Upload download Speed from device Selection | ||||
|         verifyUploadDownloadSpeediOS(setup_perfectoMobileWeb, connData) | ||||
|  | ||||
|         #ForgetWifi | ||||
|         ForgetWifiConnection(setup_perfectoMobileWeb, ssidName, connData) | ||||
|  | ||||
|     @pytest.mark.fiveg | ||||
|     @pytest.mark.wpa | ||||
|     def test_OpenRoaming_5g_WPA(self, get_APToMobileDevice_data, setup_perfectoMobileWeb): | ||||
|              | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa"][1]  | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
|         print ("SSID_PASS: " + ssidPassword) | ||||
|  | ||||
|         report = setup_perfectoMobileWeb[1] | ||||
|         driver = setup_perfectoMobileWeb[0] | ||||
|         connData = get_APToMobileDevice_data | ||||
|  | ||||
|         #Set Wifi/AP Mode | ||||
|         set_APconnMobileDevice_iOS(ssidName, ssidPassword, setup_perfectoMobileWeb, connData) | ||||
|  | ||||
|         #Verify Upload download Speed from device Selection | ||||
|         verifyUploadDownloadSpeediOS(setup_perfectoMobileWeb, connData) | ||||
|  | ||||
|         #ForgetWifi | ||||
|         ForgetWifiConnection(setup_perfectoMobileWeb, ssidName, connData) | ||||
| @@ -9,35 +9,47 @@ from selenium.common.exceptions import NoSuchElementException | ||||
| from selenium.webdriver.common.by import By | ||||
| from appium import webdriver | ||||
| from selenium.common.exceptions import NoSuchElementException | ||||
| from urllib3 import exceptions | ||||
|  | ||||
| import sys | ||||
| import allure | ||||
|  | ||||
| from urllib3 import exceptions | ||||
|  | ||||
| if 'perfecto_libs' not in sys.path: | ||||
|     sys.path.append(f'../libs/perfecto_libs') | ||||
|  | ||||
| from iOS_lib import closeApp, openApp, Toggle_AirplaneMode_iOS, ForgetWifiConnection, set_APconnMobileDevice_iOS, verify_APconnMobileDevice_iOS, Toggle_WifiMode_iOS, tearDown | ||||
|  | ||||
| setup_params_general = { | ||||
|     "mode": "NAT", | ||||
|     "ssid_modes": { | ||||
|         "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": {}, | ||||
|     "radius": False | ||||
| } | ||||
|  | ||||
| @pytest.mark.PassPointConnection | ||||
| @pytest.mark.wifi5 | ||||
| @pytest.mark.wifi6 | ||||
| @pytest.mark.interop_iOS | ||||
| @allure.feature("NAT MODE CLIENT CONNECTIVITY") | ||||
| @pytest.mark.parametrize( | ||||
|     'setup_profiles, create_profiles', | ||||
|     [(["NAT"], ["NAT"])], | ||||
|     'setup_profiles', | ||||
|     [setup_params_general], | ||||
|     indirect=True, | ||||
|     scope="class" | ||||
| ) | ||||
|  | ||||
| @pytest.mark.usefixtures("setup_profiles") | ||||
| @pytest.mark.usefixtures("create_profiles") | ||||
| class TestPassPointConnection(object): | ||||
|   | ||||
|     @pytest.mark.fiveg | ||||
|     @pytest.mark.wpa2_personal | ||||
|     def test_PassPointConnection_5g_WPA2_Personal(self,setup_profile_data, setup_perfectoMobile_iOS, get_PassPointConniOS_data): | ||||
|     def test_PassPointConnection_5g_WPA2_Personal(self, setup_perfectoMobile_iOS, get_PassPointConniOS_data): | ||||
|    | ||||
|         profile_data = setup_profile_data["NAT"]["WPA2_P"]["5G"]   | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]  | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
| @@ -61,9 +73,9 @@ class TestPassPointConnection(object): | ||||
|  | ||||
|     @pytest.mark.twog | ||||
|     @pytest.mark.wpa2_personal | ||||
|     def test_PassPointConnection_2g_WPA2_Personal(self,setup_profile_data, setup_perfectoMobile_iOS, get_PassPointConniOS_data): | ||||
|     def test_PassPointConnection_2g_WPA2_Personal(self, setup_perfectoMobile_iOS, get_PassPointConniOS_data): | ||||
|          | ||||
|         profile_data = setup_profile_data["NAT"]["WPA2_P"]["2G"]   | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]  | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"]   | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
| @@ -87,9 +99,9 @@ class TestPassPointConnection(object): | ||||
|  | ||||
|     @pytest.mark.twog | ||||
|     @pytest.mark.wpa | ||||
|     def test_PassPointConnection_2g_WPA(self,setup_profile_data, setup_perfectoMobile_iOS, get_PassPointConniOS_data): | ||||
|     def test_PassPointConnection_2g_WPA(self, setup_perfectoMobile_iOS, get_PassPointConniOS_data): | ||||
|          | ||||
|         profile_data = setup_profile_data["NAT"]["WPA"]["2G"]   | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa"][0] | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"]   | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
| @@ -113,9 +125,9 @@ class TestPassPointConnection(object): | ||||
|  | ||||
|     @pytest.mark.fiveg | ||||
|     @pytest.mark.wpa | ||||
|     def test_PassPointConnection_5g_WPA(self,setup_profile_data, setup_perfectoMobile_iOS, get_PassPointConniOS_data): | ||||
|     def test_PassPointConnection_5g_WPA(self, setup_perfectoMobile_iOS, get_PassPointConniOS_data): | ||||
|          | ||||
|         profile_data = setup_profile_data["NAT"]["WPA"]["5G"]   | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa"][1]  | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"]   | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
|   | ||||
| @@ -11,31 +11,43 @@ from appium import webdriver | ||||
| from selenium.common.exceptions import NoSuchElementException | ||||
|  | ||||
| import sys | ||||
| import allure | ||||
|  | ||||
| if 'perfecto_libs' not in sys.path: | ||||
|     sys.path.append(f'../libs/perfecto_libs') | ||||
|  | ||||
| from iOS_lib import closeApp, openApp, Toggle_AirplaneMode_iOS, ForgetWifiConnection, set_APconnMobileDevice_iOS, verify_APconnMobileDevice_iOS, Toggle_WifiMode_iOS, tearDown | ||||
|  | ||||
| setup_params_general = { | ||||
|     "mode": "NAT", | ||||
|     "ssid_modes": { | ||||
|         "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": {}, | ||||
|     "radius": False | ||||
| } | ||||
|  | ||||
| @pytest.mark.ToggleWifiMode | ||||
| @pytest.mark.wifi5 | ||||
| @pytest.mark.wifi6 | ||||
| @pytest.mark.interop_iOS | ||||
| @allure.feature("NAT MODE CLIENT CONNECTIVITY") | ||||
| @pytest.mark.parametrize( | ||||
|     'setup_profiles, create_profiles', | ||||
|     [(["NAT"], ["NAT"])], | ||||
|     'setup_profiles', | ||||
|     [setup_params_general], | ||||
|     indirect=True, | ||||
|     scope="class" | ||||
| ) | ||||
|  | ||||
| @pytest.mark.usefixtures("setup_profiles") | ||||
| @pytest.mark.usefixtures("create_profiles") | ||||
| class TestToggleWifiMode(object): | ||||
|  | ||||
|     @pytest.mark.fiveg | ||||
|     @pytest.mark.wpa2_personal | ||||
|     def test_ToogleWifiMode_5g_WPA2_Personal(self, setup_profile_data, get_ToggleWifiMode_data, setup_perfectoMobile_iOS): | ||||
|     def test_ToogleWifiMode_5g_WPA2_Personal(self, get_ToggleWifiMode_data, setup_perfectoMobile_iOS): | ||||
|           | ||||
|         profile_data = setup_profile_data["NAT"]["WPA2_P"]["5G"]   | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1] | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
| @@ -60,9 +72,9 @@ class TestToggleWifiMode(object): | ||||
|  | ||||
|     @pytest.mark.twog | ||||
|     @pytest.mark.wpa2_personal | ||||
|     def test_ToogleWifiMode_2g_WPA2_Personal(self, setup_profile_data, get_ToggleWifiMode_data, setup_perfectoMobile_iOS): | ||||
|     def test_ToogleWifiMode_2g_WPA2_Personal(self, get_ToggleWifiMode_data, setup_perfectoMobile_iOS): | ||||
|          | ||||
|         profile_data = setup_profile_data["NAT"]["WPA2_P"]["2G"]   | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0] | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
| @@ -87,9 +99,9 @@ class TestToggleWifiMode(object): | ||||
|  | ||||
|     @pytest.mark.fiveg | ||||
|     @pytest.mark.wpa | ||||
|     def test_ToogleWifiMode_5g_WPA(self, setup_profile_data, get_ToggleWifiMode_data, setup_perfectoMobile_iOS): | ||||
|     def test_ToogleWifiMode_5g_WPA(self, get_ToggleWifiMode_data, setup_perfectoMobile_iOS): | ||||
|           | ||||
|         profile_data = setup_profile_data["NAT"]["WPA"]["5G"]   | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa"][1]  | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
| @@ -114,9 +126,9 @@ class TestToggleWifiMode(object): | ||||
|  | ||||
|     @pytest.mark.twog | ||||
|     @pytest.mark.wpa | ||||
|     def test_ToogleWifiMode_2g_WPA(self, setup_profile_data, get_ToggleWifiMode_data, setup_perfectoMobile_iOS): | ||||
|     def test_ToogleWifiMode_2g_WPA(self, get_ToggleWifiMode_data, setup_perfectoMobile_iOS): | ||||
|           | ||||
|         profile_data = setup_profile_data["NAT"]["WPA"]["2G"]   | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa"][0] | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
|   | ||||
| @@ -11,32 +11,43 @@ from appium import webdriver | ||||
| from selenium.common.exceptions import NoSuchElementException | ||||
|  | ||||
| import sys | ||||
| #pytestmark = [pytest.mark.ClientConnectivity, pytest.mark.nat, pytest.mark.interop] | ||||
| import allure | ||||
|  | ||||
| if 'perfecto_libs' not in sys.path: | ||||
|     sys.path.append(f'../libs/perfecto_libs') | ||||
|  | ||||
| from iOS_lib import closeApp, openApp, verifyUploadDownloadSpeediOS, ForgetWifiConnection, Toggle_AirplaneMode_iOS, set_APconnMobileDevice_iOS, verify_APconnMobileDevice_iOS, Toggle_WifiMode_iOS, tearDown | ||||
|  | ||||
| setup_params_general = { | ||||
|     "mode": "NAT", | ||||
|     "ssid_modes": { | ||||
|         "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": {}, | ||||
|     "radius": False | ||||
| } | ||||
|  | ||||
| @pytest.mark.ClientConnectivity | ||||
| @pytest.mark.wifi5 | ||||
| @pytest.mark.wifi6 | ||||
| @pytest.mark.interop_iOS | ||||
| @allure.feature("NAT MODE CLIENT CONNECTIVITY") | ||||
| @pytest.mark.parametrize( | ||||
|     'setup_profiles, create_profiles', | ||||
|     [(["NAT"], ["NAT"])], | ||||
|     'setup_profiles', | ||||
|     [setup_params_general], | ||||
|     indirect=True, | ||||
|     scope="class" | ||||
| ) | ||||
|   | ||||
| @pytest.mark.usefixtures("setup_profiles") | ||||
| @pytest.mark.usefixtures("create_profiles") | ||||
| class TestNatMode(object): | ||||
|  | ||||
|     @pytest.mark.fiveg | ||||
|     @pytest.mark.wpa2_personal | ||||
|     def test_ClientConnectivity_5g_WPA2_Personal(self, setup_profile_data, get_APToMobileDevice_data, setup_perfectoMobile_iOS): | ||||
|     def test_ClientConnectivity_5g_WPA2_Personal(self, get_APToMobileDevice_data, setup_perfectoMobile_iOS): | ||||
|          | ||||
|         profile_data = setup_profile_data["NAT"]["WPA2_P"]["5G"]   | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]  | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
| @@ -57,9 +68,9 @@ class TestNatMode(object): | ||||
|  | ||||
|     @pytest.mark.twog | ||||
|     @pytest.mark.wpa2_personal | ||||
|     def test_ClientConnectivity_2g_WPA2_Personal(self, setup_profile_data, get_APToMobileDevice_data, setup_perfectoMobileWeb): | ||||
|     def test_ClientConnectivity_2g_WPA2_Personal(self, get_APToMobileDevice_data, setup_perfectoMobileWeb): | ||||
|              | ||||
|         profile_data = setup_profile_data["NAT"]["WPA2_P"]["2G"]   | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0] | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
| @@ -80,9 +91,9 @@ class TestNatMode(object): | ||||
|  | ||||
|     @pytest.mark.twog | ||||
|     @pytest.mark.wpa | ||||
|     def test_ClientConnectivity_2g_WPA(self, setup_profile_data, get_APToMobileDevice_data, setup_perfectoMobileWeb): | ||||
|     def test_ClientConnectivity_2g_WPA(self, get_APToMobileDevice_data, setup_perfectoMobileWeb): | ||||
|              | ||||
|         profile_data = setup_profile_data["NAT"]["WPA"]["2G"]   | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa"][0] | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
| @@ -103,9 +114,9 @@ class TestNatMode(object): | ||||
|  | ||||
|     @pytest.mark.fiveg | ||||
|     @pytest.mark.wpa | ||||
|     def test_ClientConnectivity_5g_WPA(self, setup_profile_data, get_APToMobileDevice_data, setup_perfectoMobileWeb): | ||||
|     def test_ClientConnectivity_5g_WPA(self, get_APToMobileDevice_data, setup_perfectoMobileWeb): | ||||
|              | ||||
|         profile_data = setup_profile_data["NAT"]["WPA"]["5G"]   | ||||
|         profile_data = setup_params_general["ssid_modes"]["wpa"][1]  | ||||
|         ssidName = profile_data["ssid_name"] | ||||
|         ssidPassword = profile_data["security_key"] | ||||
|         print ("SSID_NAME: " + ssidName) | ||||
|   | ||||
| @@ -10,13 +10,11 @@ num_stations=1 | ||||
| # Cloud SDK settings | ||||
| sdk-customer-id=2 | ||||
|  | ||||
|  | ||||
| # Radius Settings | ||||
| radius_server_ip=192.168.200.75 | ||||
| radius_port=1812 | ||||
| radius_secret=testing123 | ||||
|  | ||||
|  | ||||
| # Testrail Info | ||||
| tr_url=https://telecominfraproject.testrail.com | ||||
| tr_user=cicd@tip.com | ||||
| @@ -25,42 +23,42 @@ tr_project_id=WLAN | ||||
| tr_prefix=TIP_ | ||||
| milestone=29 | ||||
|  | ||||
|  | ||||
| filterwarnings = | ||||
|     ignore::UserWarning | ||||
|  | ||||
| markers = | ||||
|     sanity: Run the sanity for Client Connectivity test | ||||
|  | ||||
|  | ||||
| #--- Perfecto parameters ----- | ||||
| perfectoURL=tip | ||||
| securityToken=eyJhbGciOiJIUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICI3NzkzZGM0Ni1jZmU4LTQ4ODMtYjhiOS02ZWFlZGU2OTc2MDkifQ.eyJqdGkiOiJjYjRjYjQzYi05Y2FiLTQxNzQtOTYxYi04MDEwNTZkNDM2MzgiLCJleHAiOjAsIm5iZiI6MCwiaWF0IjoxNjExNTk0NzcxLCJpc3MiOiJodHRwczovL2F1dGgyLnBlcmZlY3RvbW9iaWxlLmNvbS9hdXRoL3JlYWxtcy90aXAtcGVyZmVjdG9tb2JpbGUtY29tIiwiYXVkIjoiaHR0cHM6Ly9hdXRoMi5wZXJmZWN0b21vYmlsZS5jb20vYXV0aC9yZWFsbXMvdGlwLXBlcmZlY3RvbW9iaWxlLWNvbSIsInN1YiI6IjdiNTMwYWUwLTg4MTgtNDdiOS04M2YzLTdmYTBmYjBkZGI0ZSIsInR5cCI6Ik9mZmxpbmUiLCJhenAiOiJvZmZsaW5lLXRva2VuLWdlbmVyYXRvciIsIm5vbmNlIjoiZTRmOTY4NjYtZTE3NS00YzM2LWEyODMtZTQwMmI3M2U5NzhlIiwiYXV0aF90aW1lIjowLCJzZXNzaW9uX3N0YXRlIjoiYWNkNTQ3MTctNzJhZC00MGU3LWI0ZDctZjlkMTAyNDRkNWZlIiwicmVhbG1fYWNjZXNzIjp7InJvbGVzIjpbIm9mZmxpbmVfYWNjZXNzIiwidW1hX2F1dGhvcml6YXRpb24iXX0sInJlc291cmNlX2FjY2VzcyI6eyJyZXBvcnRpdW0iOnsicm9sZXMiOlsiYWRtaW5pc3RyYXRvciJdfSwiYWNjb3VudCI6eyJyb2xlcyI6WyJtYW5hZ2UtYWNjb3VudCIsIm1hbmFnZS1hY2NvdW50LWxpbmtzIiwidmlldy1wcm9maWxlIl19fSwic2NvcGUiOiJvcGVuaWQgcHJvZmlsZSBvZmZsaW5lX2FjY2VzcyBlbWFpbCJ9.SOL-wlZiQ4BoLLfaeIW8QoxJ6xzrgxBjwSiSzkLBPYw | ||||
| securityToken=eyJhbGciOiJIUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICI3NzkzZGM0Ni1jZmU4LTQ4ODMtYjhiOS02ZWFlZGU2OTc2MDkifQ.eyJpYXQiOjE2MjE4NjgyOTksImp0aSI6IjIzNGFiOTM1LWIxYjQtNGZiOC1hZmJiLTM0OTQwNzU5MjIwMyIsImlzcyI6Imh0dHBzOi8vYXV0aDIucGVyZmVjdG9tb2JpbGUuY29tL2F1dGgvcmVhbG1zL3RpcC1wZXJmZWN0b21vYmlsZS1jb20iLCJhdWQiOiJodHRwczovL2F1dGgyLnBlcmZlY3RvbW9iaWxlLmNvbS9hdXRoL3JlYWxtcy90aXAtcGVyZmVjdG9tb2JpbGUtY29tIiwic3ViIjoiN2I1MzBhZTAtODgxOC00N2I5LTgzZjMtN2ZhMGZiMGRkYjRlIiwidHlwIjoiT2ZmbGluZSIsImF6cCI6Im9mZmxpbmUtdG9rZW4tZ2VuZXJhdG9yIiwibm9uY2UiOiI1MzI2NDQxNS0xYTQwLTQ1ZTctOGVkMi1hOTNiYWZmZWNjYjIiLCJzZXNzaW9uX3N0YXRlIjoiY2YzY2JlOGMtY2Y5OC00NzRlLWJmODctYTIxNzU0NzVhM2EzIiwic2NvcGUiOiJvcGVuaWQgcHJvZmlsZSBvZmZsaW5lX2FjY2VzcyBlbWFpbCJ9.4a4v6AKxmY95Zb-l84K_Od49WPikwOHP7ryctfmnn-w | ||||
| #PS Token | ||||
| #securityToken=eyJhbGciOiJIUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICIyODhhNDIyNS1jOTE1LTQwZDctOTc2YS04MDhiMWE3YTFmODYifQ.eyJpYXQiOjE2MjA4NTU1NTcsImp0aSI6IjNiMWJiNWNhLTkzOTgtNDViOC04YmZkLTAxNjdhNGZjNDY1NCIsImlzcyI6Imh0dHBzOi8vYXV0aC5wZXJmZWN0b21vYmlsZS5jb20vYXV0aC9yZWFsbXMvcHMtcGVyZmVjdG9tb2JpbGUtY29tIiwiYXVkIjoiaHR0cHM6Ly9hdXRoLnBlcmZlY3RvbW9iaWxlLmNvbS9hdXRoL3JlYWxtcy9wcy1wZXJmZWN0b21vYmlsZS1jb20iLCJzdWIiOiIzOTNiMzFhNC00MmJlLTQ2YjEtODkwZS1iZGU3NjdlYTNiNDYiLCJ0eXAiOiJPZmZsaW5lIiwiYXpwIjoib2ZmbGluZS10b2tlbi1nZW5lcmF0b3IiLCJub25jZSI6IjI3MTY4ZjBmLTdlMmItNGI3YS1hZjNjLWFhMGE1NjhkZjE2ZCIsInNlc3Npb25fc3RhdGUiOiJlOWZjZTQ5Mi05NDA3LTQ1ZDItYjU4NS02ZDFiNTAzYzM4ZTUiLCJzY29wZSI6Im9wZW5pZCBvZmZsaW5lX2FjY2VzcyJ9.Z_rJHVkrmR26fZ366yLUSkt2oZX4a8KN7IRCd_QG3qo | ||||
| #demo Cloud | ||||
| #securityToken=eyJhbGciOiJIUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICI4YmI4YmZmZS1kMzBjLTQ2MjctYmMxMS0zNTYyMmY1ZDkyMGYifQ.eyJpYXQiOjE2MjA5MTMzMjAsImp0aSI6ImRkOWI3OTFiLTA5NzUtNGVhMC05NDczLWU2MjEzOThhN2U0NyIsImlzcyI6Imh0dHBzOi8vYXV0aC5wZXJmZWN0b21vYmlsZS5jb20vYXV0aC9yZWFsbXMvZGVtby1wZXJmZWN0b21vYmlsZS1jb20iLCJhdWQiOiJodHRwczovL2F1dGgucGVyZmVjdG9tb2JpbGUuY29tL2F1dGgvcmVhbG1zL2RlbW8tcGVyZmVjdG9tb2JpbGUtY29tIiwic3ViIjoiZjAyNGVkZGItODZkMy00OTA5LThhZjQtOGY1OTA1Yzc5ZjA4IiwidHlwIjoiT2ZmbGluZSIsImF6cCI6Im9mZmxpbmUtdG9rZW4tZ2VuZXJhdG9yIiwibm9uY2UiOiI5ZDdkMjI5Ny1lYzk1LTQ5NjUtYmRmMC1mZWJiYTk4NzI1MzUiLCJzZXNzaW9uX3N0YXRlIjoiMTI1NjFlMDQtMGUwMS00ZTYxLWE4NjMtMGQ2N2RhNzc1NjhiIiwic2NvcGUiOiJvcGVuaWQgb2ZmbGluZV9hY2Nlc3MifQ.voz1Fca_tOlPDMbIMsoPvTmZHBioeMUetA2sVsQ_SWw | ||||
|  | ||||
| # Perfecto CI Report  | ||||
| projectName = TIP-PyTest-Execution | ||||
| projectVersion = 1.0 | ||||
| jobName = Default_JobName | ||||
| jobNumber = 1 | ||||
| reportTags = TestTag | ||||
| projectName=TIP-PyTest-Execution | ||||
| projectVersion=1.0 | ||||
| jobName=Tip-RajTest-Android | ||||
| jobNumber=2 | ||||
| reportTags=TestTag | ||||
|   | ||||
| # iOS Device Capabilities | ||||
| platformName-iOS=iOS | ||||
| #manufacturer-iOS=Apple | ||||
| model-iOS=iPhone.* | ||||
| model-iOS=iPhone-XR | ||||
| bundleId-iOS=com.apple.Preferences | ||||
| platformName-iOS=iOS | ||||
| #default iOS settings app | ||||
| bundleId-iOS-Settings=com.apple.Preferences | ||||
| bundleId-iOS-Ping=com.deftapps.ping | ||||
| #browserType-iOS=Safari | ||||
| browserType-iOS=Safari | ||||
| bundleId-iOS-Safari=com.apple.mobilesafari | ||||
|  | ||||
| openRoamingURL=https://onboard.cicd.lab.wlan.tip.build/ATT-Profile.mobileconfig | ||||
| # Android Device Capabilities | ||||
| platformName-android=Android | ||||
| model-android=.* | ||||
| model-android=Galaxy S20 | ||||
| appPackage-android=com.android.settings | ||||
|  | ||||
|  | ||||
| filterwarnings=ignore::UserWarning | ||||
|  | ||||
| markers=sanity: Run the sanity for Client Connectivity test | ||||
|  | ||||
|  | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 raj-TIP
					raj-TIP