Removing Tests File from lib folder

Signed-off-by: raj-TIP <rpasupathy@perfectomobile.com>
This commit is contained in:
raj-TIP
2021-04-20 15:32:40 -05:00
parent 1288540e8e
commit ccd6a7f78a
13 changed files with 0 additions and 1525 deletions

View File

@@ -1,129 +0,0 @@
import os
import sys
import unittest
from unittest.loader import getTestCaseNames
import warnings
from perfecto.model.model import Job, Project
import urllib3
import argparse
from perfecto import (PerfectoExecutionContext, PerfectoReportiumClient,TestContext, TestResultFactory)
from appium import webdriver
#rom selenium import webdriver
import pytest
class TestConf(unittest.TestCase):
projectname = 'TIP Project'
projectversion = '1.0'
jobname = 'Tip-CI-Regression'
jobnumber = 1
tags = 'TestTag'
#testCaseName = 'ToggleWifiModeAndroid'
def __init__(self, *args, **kwargs):
warnings.simplefilter("ignore", ResourceWarning)
#Suppress InsecureRequestWarning: Unverified HTTPS request is being made
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
self.securityToken = 'eyJhbGciOiJIUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICI3NzkzZGM0Ni1jZmU4LTQ4ODMtYjhiOS02ZWFlZGU2OTc2MDkifQ.eyJqdGkiOiJjYjRjYjQzYi05Y2FiLTQxNzQtOTYxYi04MDEwNTZkNDM2MzgiLCJleHAiOjAsIm5iZiI6MCwiaWF0IjoxNjExNTk0NzcxLCJpc3MiOiJodHRwczovL2F1dGgyLnBlcmZlY3RvbW9iaWxlLmNvbS9hdXRoL3JlYWxtcy90aXAtcGVyZmVjdG9tb2JpbGUtY29tIiwiYXVkIjoiaHR0cHM6Ly9hdXRoMi5wZXJmZWN0b21vYmlsZS5jb20vYXV0aC9yZWFsbXMvdGlwLXBlcmZlY3RvbW9iaWxlLWNvbSIsInN1YiI6IjdiNTMwYWUwLTg4MTgtNDdiOS04M2YzLTdmYTBmYjBkZGI0ZSIsInR5cCI6Ik9mZmxpbmUiLCJhenAiOiJvZmZsaW5lLXRva2VuLWdlbmVyYXRvciIsIm5vbmNlIjoiZTRmOTY4NjYtZTE3NS00YzM2LWEyODMtZTQwMmI3M2U5NzhlIiwiYXV0aF90aW1lIjowLCJzZXNzaW9uX3N0YXRlIjoiYWNkNTQ3MTctNzJhZC00MGU3LWI0ZDctZjlkMTAyNDRkNWZlIiwicmVhbG1fYWNjZXNzIjp7InJvbGVzIjpbIm9mZmxpbmVfYWNjZXNzIiwidW1hX2F1dGhvcml6YXRpb24iXX0sInJlc291cmNlX2FjY2VzcyI6eyJyZXBvcnRpdW0iOnsicm9sZXMiOlsiYWRtaW5pc3RyYXRvciJdfSwiYWNjb3VudCI6eyJyb2xlcyI6WyJtYW5hZ2UtYWNjb3VudCIsIm1hbmFnZS1hY2NvdW50LWxpbmtzIiwidmlldy1wcm9maWxlIl19fSwic2NvcGUiOiJvcGVuaWQgcHJvZmlsZSBvZmZsaW5lX2FjY2VzcyBlbWFpbCJ9.SOL-wlZiQ4BoLLfaeIW8QoxJ6xzrgxBjwSiSzkLBPYw'
self.host = 'tip.perfectomobile.com'
self.driver = None
self.reporting_client = None
self.running = False
self.suitesetup = False
self.setupclient = None
self.tags = ''
self.testCaseName = 'ToggleWifiModeAndroid'
super(TestConf, self).__init__(*args, **kwargs)
def init_listener(self, projectname=None, projectversion=None, jobname=None, jobnumber=None):
"""
This key word helps to initialize the listener with proper project info
:param projectname: current project name
:param projectversion: current project version
:param jobname: the CI job name
:param jobnumber: the CI job number
:return:
"""
if projectname != None:
self.projectname = projectname
if projectversion != None:
self.projectversion = projectversion
if jobname != None:
self.jobname = jobname
if jobnumber != None:
self.jobnumber = int(float(jobnumber))
# def suitesetup_result(self):
# if self.suitesetup:
# if self.bi.get_variable_value('${TEST STATUS}') == 'FAIL':
# self.setupclient.test_stop(
## TestResultFactory.create_failure(self.bi.get_variable_value('${TEST MESSAGE}')))
# else:
# self.setupclient.test_stop(TestResultFactory.create_success())
# self.suitesetup = False
def setUp(self):
warnings.simplefilter("ignore", ResourceWarning)
capabilities = {
'platformName': 'Android',
'appPackage': 'com.android.settings',
'securityToken' : "eyJhbGciOiJIUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICI3NzkzZGM0Ni1jZmU4LTQ4ODMtYjhiOS02ZWFlZGU2OTc2MDkifQ.eyJqdGkiOiJjYjRjYjQzYi05Y2FiLTQxNzQtOTYxYi04MDEwNTZkNDM2MzgiLCJleHAiOjAsIm5iZiI6MCwiaWF0IjoxNjExNTk0NzcxLCJpc3MiOiJodHRwczovL2F1dGgyLnBlcmZlY3RvbW9iaWxlLmNvbS9hdXRoL3JlYWxtcy90aXAtcGVyZmVjdG9tb2JpbGUtY29tIiwiYXVkIjoiaHR0cHM6Ly9hdXRoMi5wZXJmZWN0b21vYmlsZS5jb20vYXV0aC9yZWFsbXMvdGlwLXBlcmZlY3RvbW9iaWxlLWNvbSIsInN1YiI6IjdiNTMwYWUwLTg4MTgtNDdiOS04M2YzLTdmYTBmYjBkZGI0ZSIsInR5cCI6Ik9mZmxpbmUiLCJhenAiOiJvZmZsaW5lLXRva2VuLWdlbmVyYXRvciIsIm5vbmNlIjoiZTRmOTY4NjYtZTE3NS00YzM2LWEyODMtZTQwMmI3M2U5NzhlIiwiYXV0aF90aW1lIjowLCJzZXNzaW9uX3N0YXRlIjoiYWNkNTQ3MTctNzJhZC00MGU3LWI0ZDctZjlkMTAyNDRkNWZlIiwicmVhbG1fYWNjZXNzIjp7InJvbGVzIjpbIm9mZmxpbmVfYWNjZXNzIiwidW1hX2F1dGhvcml6YXRpb24iXX0sInJlc291cmNlX2FjY2VzcyI6eyJyZXBvcnRpdW0iOnsicm9sZXMiOlsiYWRtaW5pc3RyYXRvciJdfSwiYWNjb3VudCI6eyJyb2xlcyI6WyJtYW5hZ2UtYWNjb3VudCIsIm1hbmFnZS1hY2NvdW50LWxpbmtzIiwidmlldy1wcm9maWxlIl19fSwic2NvcGUiOiJvcGVuaWQgcHJvZmlsZSBvZmZsaW5lX2FjY2VzcyBlbWFpbCJ9.SOL-wlZiQ4BoLLfaeIW8QoxJ6xzrgxBjwSiSzkLBPYw",
}
self.driver = webdriver.Remote('https://tip.perfectomobile.com/nexperience/perfectomobile/wd/hub', capabilities)
self.driver.implicitly_wait(20)
self.create_reporting_client()
#self.suitesetup_result()
self.reporting_client.test_start(self.testCaseName, TestContext([], 'TipCustomTag'))
def run(self, result=None):
self.currentResult = True # remember result for use in tearDown
#print('Before' + self.currentResult)
unittest.TestCase.run(self, result) # call superclass run method
#print('Result' + result)
def tearDown(self):
warnings.simplefilter("ignore", ResourceWarning)
try:
print("-------------------------------------------")
print(" -- Tear Down --")
self.reporting_client.test_stop(TestResultFactory.create_success())
#print('Report-Url: ' + self.reporting_client.report_url() + '\n')
# if self.currentResult.wasSuccessful():
# print(" -- Test Successful --")
#self.reporting_client.test_stop(TestResultFactory.create_success())
# else:
# print(" -- Test Not Successful --")
#self.reporting_client.test_stop(TestResultFactory.create_failure('failure 4096' * 1000))
# self.reporting_client.test_stop(TestResultFactory.create_failure(self.currentResult.errors,self.currentResult.failures))
#Print report's url
print('Report-Url: ' + self.reporting_client.report_url() + '\n')
except Exception as e:
print (e.message)
try:
self.driver.close()
except Exception as e:
print(" -- Exception Not Able To close --")
print (e.message)
finally:
try:
self.driver.quit()
except Exception as e:
print(" -- Exception Not Able To Quit --")
print (e.message)
def create_reporting_client(self):
perfecto_execution_context = PerfectoExecutionContext(self.driver, self.tags, Job(self.jobname, self.jobnumber),
Project(self.projectname, self.projectversion))
#perfecto_execution_context = PerfectoExecutionContext(self.driver, ['execution tag1', 'execution tag2'])
self.reporting_client = PerfectoReportiumClient(perfecto_execution_context)

View File

@@ -1,117 +0,0 @@
import os
import sys
import unittest
import warnings
import urllib3
import argparse
from perfecto.model.model import Job, Project
from perfecto import (PerfectoExecutionContext, PerfectoReportiumClient,TestContext, TestResultFactory)
#from appium import webdriver
from selenium import webdriver
class TestConf(unittest.TestCase):
projectname = 'TIP Project'
projectversion = '1.0'
jobname = 'Tip-CI-Regression'
jobnumber = 1
tags = 'TestTag'
def __init__(self, *args, **kwargs):
#Suppress InsecureRequestWarning: Unverified HTTPS request is being made
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
self.securityToken = 'eyJhbGciOiJIUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICI3NzkzZGM0Ni1jZmU4LTQ4ODMtYjhiOS02ZWFlZGU2OTc2MDkifQ.eyJqdGkiOiJjYjRjYjQzYi05Y2FiLTQxNzQtOTYxYi04MDEwNTZkNDM2MzgiLCJleHAiOjAsIm5iZiI6MCwiaWF0IjoxNjExNTk0NzcxLCJpc3MiOiJodHRwczovL2F1dGgyLnBlcmZlY3RvbW9iaWxlLmNvbS9hdXRoL3JlYWxtcy90aXAtcGVyZmVjdG9tb2JpbGUtY29tIiwiYXVkIjoiaHR0cHM6Ly9hdXRoMi5wZXJmZWN0b21vYmlsZS5jb20vYXV0aC9yZWFsbXMvdGlwLXBlcmZlY3RvbW9iaWxlLWNvbSIsInN1YiI6IjdiNTMwYWUwLTg4MTgtNDdiOS04M2YzLTdmYTBmYjBkZGI0ZSIsInR5cCI6Ik9mZmxpbmUiLCJhenAiOiJvZmZsaW5lLXRva2VuLWdlbmVyYXRvciIsIm5vbmNlIjoiZTRmOTY4NjYtZTE3NS00YzM2LWEyODMtZTQwMmI3M2U5NzhlIiwiYXV0aF90aW1lIjowLCJzZXNzaW9uX3N0YXRlIjoiYWNkNTQ3MTctNzJhZC00MGU3LWI0ZDctZjlkMTAyNDRkNWZlIiwicmVhbG1fYWNjZXNzIjp7InJvbGVzIjpbIm9mZmxpbmVfYWNjZXNzIiwidW1hX2F1dGhvcml6YXRpb24iXX0sInJlc291cmNlX2FjY2VzcyI6eyJyZXBvcnRpdW0iOnsicm9sZXMiOlsiYWRtaW5pc3RyYXRvciJdfSwiYWNjb3VudCI6eyJyb2xlcyI6WyJtYW5hZ2UtYWNjb3VudCIsIm1hbmFnZS1hY2NvdW50LWxpbmtzIiwidmlldy1wcm9maWxlIl19fSwic2NvcGUiOiJvcGVuaWQgcHJvZmlsZSBvZmZsaW5lX2FjY2VzcyBlbWFpbCJ9.SOL-wlZiQ4BoLLfaeIW8QoxJ6xzrgxBjwSiSzkLBPYw'
self.host = 'tip.perfectomobile.com'
self.driver = None
self.reporting_client = None
self.running = False
self.suitesetup = False
self.setupclient = None
self.tags = ''
self.testCaseName = 'VerifyAPToMobileDeviceAndroid'
super(TestConf, self).__init__(*args, **kwargs)
def init_listener(self, projectname=None, projectversion=None, jobname=None, jobnumber=None):
"""
This key word helps to initialize the listener with proper project info
:param projectname: current project name
:param projectversion: current project version
:param jobname: the CI job name
:param jobnumber: the CI job number
:return:
"""
if projectname != None:
self.projectname = projectname
if projectversion != None:
self.projectversion = projectversion
if jobname != None:
self.jobname = jobname
if jobnumber != None:
self.jobnumber = int(float(jobnumber))
def setUp(self):
warnings.simplefilter("ignore", ResourceWarning)
capabilities = {
'platformName': 'Android',
'securityToken' : 'eyJhbGciOiJIUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICI3NzkzZGM0Ni1jZmU4LTQ4ODMtYjhiOS02ZWFlZGU2OTc2MDkifQ.eyJqdGkiOiJjYjRjYjQzYi05Y2FiLTQxNzQtOTYxYi04MDEwNTZkNDM2MzgiLCJleHAiOjAsIm5iZiI6MCwiaWF0IjoxNjExNTk0NzcxLCJpc3MiOiJodHRwczovL2F1dGgyLnBlcmZlY3RvbW9iaWxlLmNvbS9hdXRoL3JlYWxtcy90aXAtcGVyZmVjdG9tb2JpbGUtY29tIiwiYXVkIjoiaHR0cHM6Ly9hdXRoMi5wZXJmZWN0b21vYmlsZS5jb20vYXV0aC9yZWFsbXMvdGlwLXBlcmZlY3RvbW9iaWxlLWNvbSIsInN1YiI6IjdiNTMwYWUwLTg4MTgtNDdiOS04M2YzLTdmYTBmYjBkZGI0ZSIsInR5cCI6Ik9mZmxpbmUiLCJhenAiOiJvZmZsaW5lLXRva2VuLWdlbmVyYXRvciIsIm5vbmNlIjoiZTRmOTY4NjYtZTE3NS00YzM2LWEyODMtZTQwMmI3M2U5NzhlIiwiYXV0aF90aW1lIjowLCJzZXNzaW9uX3N0YXRlIjoiYWNkNTQ3MTctNzJhZC00MGU3LWI0ZDctZjlkMTAyNDRkNWZlIiwicmVhbG1fYWNjZXNzIjp7InJvbGVzIjpbIm9mZmxpbmVfYWNjZXNzIiwidW1hX2F1dGhvcml6YXRpb24iXX0sInJlc291cmNlX2FjY2VzcyI6eyJyZXBvcnRpdW0iOnsicm9sZXMiOlsiYWRtaW5pc3RyYXRvciJdfSwiYWNjb3VudCI6eyJyb2xlcyI6WyJtYW5hZ2UtYWNjb3VudCIsIm1hbmFnZS1hY2NvdW50LWxpbmtzIiwidmlldy1wcm9maWxlIl19fSwic2NvcGUiOiJvcGVuaWQgcHJvZmlsZSBvZmZsaW5lX2FjY2VzcyBlbWFpbCJ9.SOL-wlZiQ4BoLLfaeIW8QoxJ6xzrgxBjwSiSzkLBPYw',
#browserName Chrome/Safari/MobileOS/MobileDefault/PerfectoMobile
'browserName': 'MobileOS'
#'bundleId': 'com.apple.mobilesafari',
#'enableAppiumBehavior': True, # Enable new architecture of Appium
# 'autoLaunch': True, # To work with hybrid applications, install the iOS/Android application as instrumented.
#'OS': 'Android.*'
}
#self.driver = webdriver.Remote('https://tip.perfectomobile.com/nexperience/perfectomobile/wd/hub', capabilities)
self.driver = webdriver.Remote('https://tip.perfectomobile.com/nexperience/perfectomobile/wd/hub', capabilities)
self.driver.implicitly_wait(30)
self.create_reporting_client()
self.reporting_client.test_start(self.testCaseName, TestContext([], 'TipCustomTag'))
def run(self, result=None):
self.currentResult = True # remember result for use in tearDown
unittest.TestCase.run(self, result) # call superclass run method
def tearDown(self):
warnings.simplefilter("ignore", ResourceWarning)
try:
print("-------------------------------------------")
print(" -- Tear Down --")
self.reporting_client.test_stop(TestResultFactory.create_success())
#if self.currentResult.wasSuccessful():
# self.reporting_client.test_stop(TestResultFactory.create_success())
# else:
# self.reporting_client.test_stop(TestResultFactory.create_failure('failure 4096' * 1000))
# self.reporting_client.test_stop(TestResultFactory.create_failure(self.currentResult.errors,
# self.currentResult.failures))
# Print report's url
print('Report-Url: ' + self.reporting_client.report_url() + '\n')
except Exception as e:
print (e.message)
try:
self.driver.close()
except Exception as e:
print(" -- Exception Not Able To close --")
print (e.message)
finally:
try:
self.driver.quit()
except Exception as e:
print(" -- Exception Not Able To Quit --")
print (e.message)
def create_reporting_client(self):
perfecto_execution_context = PerfectoExecutionContext(self.driver, self.tags, Job(self.jobname, self.jobnumber),
Project(self.projectname, self.projectversion))
#perfecto_execution_context = PerfectoExecutionContext(self.driver, ['execution tag1', 'execution tag2'])
self.reporting_client = PerfectoReportiumClient(perfecto_execution_context)

View File

@@ -1,119 +0,0 @@
import time
import unittest
import warnings
#from perfecto import TestResultFactory
from selenium.common.exceptions import NoSuchElementException
from selenium.webdriver.common.by import By
import argparse
from BaseClassAndroid import TestConf
class ReportingTests(TestConf):
def test_navigation(self):
warnings.simplefilter("ignore", ResourceWarning)
try:
# assert 'Perfecto' in self.driver.title
print("-------------------------------------------")
#REPORTIUM TEST START
#self.reporting_client.step_start("BasicConnectionTest")
#Open Setting Application
print("Opening Settings App..")
self.reporting_client.step_start("Opening Settings App..")
params = {'identifier': 'com.android.settings'}
self.driver.execute_script('mobile:application:close', params)
self.driver.execute_script('mobile:application:open', params)
print("Load Wifi/BlueTooth/AirplaneMode Connection Settings..")
self.reporting_client.step_start("Load Connection Settings")
element = self.driver.find_element_by_xpath("//*[@text='Connections']")
element.click()
#Verifies if AP is connected to Wifi status
# print("Verify AirplaneMode Connection Status..")
# try:
# WifiXpath = "//*[@text='Airplane mode']/parent::*/android.widget.TextView[2]"
## elementWifName = self.driver.find_element_by_xpath(WifiXpath)
# print("Airplane Mode StatusMsg: " + elementWifName.text)
# except NoSuchElementException:
# print("Exception: Unable to Toggle Airplane Radio Button...Check Xpath")
print("Toggle Airplane AP Mode..")
self.reporting_client.step_start("Toggle Airplane AP Mode")
try:
WifiInternet = self.driver.find_element_by_xpath("//*[@content-desc='Airplane mode']")
WifiInternet.click()
except NoSuchElementException:
print("Exception: Unable to Toggle Airplane Radio Button...Check Xpath")
#Ensure Wifi Radio Button Disabled
print("Verify Airplane Disconnected Status..")
self.reporting_client.step_start("Verify Airplane Disconnected Status")
try:
WifiXpathDisconnected = "//*[@text='Airplane mode']/parent::*/android.widget.TextView[2]"
elementWifiDiscont = self.driver.find_element_by_xpath(WifiXpathDisconnected)
print("AirPlane Disconnected Name: " + "Please " + elementWifiDiscont.text)
except NoSuchElementException:
print("Warning...No Airplane Mode Msg...Check Xpath")
print("Toggle Airplane Radio Button On..")
self.reporting_client.step_start("Toggle Airplane Radio Button On")
try:
#Toggle Wifi Radio Button
WifiInternet2 = self.driver.find_element_by_xpath("//*[@content-desc='Airplane mode']")
WifiInternet2.click()
except NoSuchElementException:
print("Exception: Unable to Toggle Airplane Radio...Check Xpath")
#Verifies if AP is connected to Wifi status
print("Verify Wifi ReConnection Status..")
self.reporting_client.step_start("Verify Wifi ReConnection Status..")
try:
WifiXpathToggle = "//*[@text='Wi-Fi']/parent::*/android.widget.TextView[2]"
elementWifNameToggle = self.driver.find_element_by_xpath(WifiXpathToggle)
print("Wifi Connected AP Status: " + elementWifNameToggle.text)
self.reporting_client.step_start("Connection Status Successfull")
#self.assertEqual("elementWifName.text","elementWifNameToggle.text","Connection Successfull Reconnected")
print("Connection Successfull Reconnected")
except NoSuchElementException:
print("Exception: AirplaneMode Not Connected Back...Check Xpath")
except NoSuchElementException as ex:
self.currentResult = False
#self.reporting_client.test_stop(TestResultFactory.create_failure("NoSuchElementException", ex))
print (ex.message)
self.currentResult = True
#self.reporting_client.test_stop(Tes
if __name__ == '__main__':
# parser = argparse.ArgumentParser(description="Perfecto Arguments")
#parser.add_argument(
# "-c",
# "--cloud_name",
# metavar="cloud_name",
# help="Perfecto cloud name. (E.g. demo)",
#)
# parser.add_argument(
# "-s",
# "--security_token",
# metavar="security_token",
# help="Perfecto cloud name. (E.g. demo)",
# )
#args = vars(parser.parse_args())
#if not args["cloud_name"]:
# parser.print_help()
# parser.error(
# "cloud_name parameter is empty. Pass the argument -c followed by cloud_name"
# )
# exit
#print(str(args["cloud_name"]))
unittest.main()

View File

@@ -1,126 +0,0 @@
import time
import unittest
import warnings
from perfecto import TestResultFactory
from selenium.common.exceptions import NoSuchElementException
from selenium.webdriver.common.by import By
import argparse
from BaseClassAndroid import TestConf
class ReportingTests(TestConf):
#reportTagStart = reportTagStart()
def test_navigation(self):
warnings.simplefilter("ignore", ResourceWarning)
try:
# assert 'Perfecto' in self.driver.title
print("-------------------------------------------")
#REPORTIUM TEST START
#Open Setting Application
print("Opening Settings App..")
#self.reportTagStart()
self.reporting_client.step_start("Opening Settings App..")
params = {'identifier': 'com.android.settings'}
self.driver.execute_script('mobile:application:close', params)
self.driver.execute_script('mobile:application:open', params)
self.reporting_client.step_start("Load Wifi/BlueTooth/AirplaneMode Connection Settings..")
print("Load Wifi/BlueTooth/AirplaneMode Connection Settings..")
element = self.driver.find_element_by_xpath("//*[@text='Connections']")
element.click()
#Verifies if AP is connected to Wifi status
print("Verify Wifi Connection Status..")
self.reporting_client.step_start("Verify Wifi Connection Status..")
try:
WifiXpath = "//*[@text='Wi-Fi']/parent::*/android.widget.TextView[2]"
elementWifName = self.driver.find_element_by_xpath(WifiXpath)
print("Wifi Connected AP Name: " + elementWifName.text)
except NoSuchElementException:
print("Exception: Unable to Toggle Wifi Radio Button...Check Xpath")
print("Toggle Wifi AP Mode..")
self.reporting_client.step_start("Toggle Wifi AP Mode..")
try:
WifiInternet = self.driver.find_element_by_xpath("//*[@content-desc='Wi-Fi']")
WifiInternet.click()
except NoSuchElementException:
print("Exception: Unable to Toggle Wifi Radio Button...Check Xpath")
#Ensure Wifi Radio Button Disabled
print("Verify Wifi Disconnected Status..")
self.reporting_client.step_start("Verify Wifi Disconnected Status..")
try:
WifiXpathDisconnected = "//*[@text='Wi-Fi']/parent::*/android.widget.TextView[2]"
elementWifiDiscont = self.driver.find_element_by_xpath(WifiXpathDisconnected)
print("Wifi Disconnected Name: " + "Please " + elementWifiDiscont.text)
except NoSuchElementException:
print("Warning...No Wifi Disconnected Msg...Check Xpath")
print("Toggle Wifi Radio Button On..")
self.reporting_client.step_start("Toggle Wifi Radio Button On..")
try:
#Toggle Wifi Radio Button
WifiInternet2 = self.driver.find_element_by_xpath("//*[@content-desc='Wi-Fi']")
WifiInternet2.click()
except NoSuchElementException:
print("Exception: Unable to Toggle Wifi Radio...Check Xpath")
#Verifies if AP is connected to Wifi status
print("Verify Wifi ReConnection Status..")
self.reporting_client.step_start("Verify Wifi ReConnection Status..")
try:
WifiXpathToggle = "//*[@text='Wi-Fi']/parent::*/android.widget.TextView[2]"
elementWifNameToggle = self.driver.find_element_by_xpath(WifiXpathToggle)
print("Wifi Connected AP Status: " + elementWifNameToggle.text)
#self.assertEqual("elementWifName.text","elementWifNameToggle.text","Connection Successfull Reconnected")
print("Connection Successfull Reconnected")
except NoSuchElementException:
print("Exception: Wifi Not Connected Back.Check Xpath")
except NoSuchElementException as ex:
self.currentResult = False
#self.reporting_client.test_stop(TestResultFactory.create_failure("NoSuchElementException", ex))
print (ex.message)
#self.currentResult = True
#self.reporting_client.test_stop(Tes
if __name__ == '__main__':
# parser = argparse.ArgumentParser(description="Perfecto Arguments")
#parser.add_argument(
# "-c",
# "--cloud_name",
# metavar="cloud_name",
# help="Perfecto cloud name. (E.g. demo)",
#)
# parser.add_argument(
# "-s",
# "--security_token",
# metavar="security_token",
# help="Perfecto cloud name. (E.g. demo)",
# )
#args = vars(parser.parse_args())
#if not args["cloud_name"]:
# parser.print_help()
# parser.error(
# "cloud_name parameter is empty. Pass the argument -c followed by cloud_name"
# )
# exit
#print(str(args["cloud_name"]))
unittest.main()
#def reportTagStart(self, stepName):
# self.reporting_client.step_start(stepName)

View File

@@ -1,113 +0,0 @@
import time
import unittest
import warnings
from selenium.webdriver.common.keys import Keys
#from perfecto import TestResultFactory
from selenium.common.exceptions import NoSuchElementException
from selenium.webdriver.common.by import By
import argparse
from urllib3.exceptions import HeaderParsingError
from BaseClassWebAndroid import TestConf
class ReportingTests(TestConf):
def test_navigation(self):
warnings.simplefilter("ignore", ResourceWarning)
try:
print("-----------------AP TO MOBILE DEVICE--------------------------")
#REPORTIUM TEST START
#self.reporting_client.step_start("BasicConnectionTest")
#Search
try:
self.reporting_client.step_start("Go to URL..")
self.driver.get('https://www.google.com')
lblSearch = "//*[@class='gLFyf']"
elementFindTxt = self.driver.find_element_by_xpath(lblSearch)
elementFindTxt.send_keys("Internet Speed Test")
try:
self.reporting_client.step_start("Verify Speed Test Page Btn")
elelSearch = self.driver.find_element_by_xpath("(//*[@class='sbic sb43'])[1]")
elelSearch.click()
except NoSuchElementException:
print("Enter Not Active...")
time.sleep(15)
self.reporting_client.step_start("Start Speed Test")
BtnRunSpeedTest = "//*[@id='knowledge-verticals-internetspeedtest__test_button']"
self.driver.find_element_by_xpath(BtnRunSpeedTest).click()
#Get upload/Download Speed
try:
self.reporting_client.step_start("Verify Upload/Download Speed")
time.sleep(60)
downloadMbps = self.driver.find_element_by_xpath("//*[@id='knowledge-verticals-internetspeedtest__download']/P[@class='spiqle']")
downloadSpeed = downloadMbps.text
print("Download: " + downloadSpeed + " Mbps")
UploadMbps = self.driver.find_element_by_xpath("//*[@id='knowledge-verticals-internetspeedtest__upload']/P[@class='spiqle']")
uploadSpeed = UploadMbps.text
print("Upload: " + uploadSpeed + " Mbps")
print("Access Point Verification Completed Successfully")
except NoSuchElementException:
print("Access Point Verification NOT Completed, checking Connection....")
except Exception as e:
print (e.message)
#refresh page //*[@label="reload"]
#TestAgain: //*[text()="TEST AGAIN"]
# time.sleep(20)
#Close Settings App
# self.driver.execute_script('mobile:application:close', params2)
#REPORTIUM TEST END
#self.reporting_client.step_end()
except NoSuchElementException as ex:
self.currentResult = False
#self.reporting_client.test_stop(TestResultFactory.create_failure("NoSuchElementException", ex))
print (ex.message)
self.currentResult = True
#self.reporting_client.test_stop(Tes
if __name__ == '__main__':
# parser = argparse.ArgumentParser(description="Perfecto Arguments")
#parser.add_argument(
# "-c",
# "--cloud_name",
# metavar="cloud_name",
# help="Perfecto cloud name. (E.g. demo)",
#)
# parser.add_argument(
# "-s",
# "--security_token",
# metavar="security_token",
# help="Perfecto cloud name. (E.g. demo)",
# )
#args = vars(parser.parse_args())
#if not args["cloud_name"]:
# parser.print_help()
# parser.error(
# "cloud_name parameter is empty. Pass the argument -c followed by cloud_name"
# )
# exit
#print(str(args["cloud_name"]))
unittest.main()

View File

@@ -1,88 +0,0 @@
import time
import unittest
import warnings
#from perfecto import TestResultFactory
from selenium.common.exceptions import NoSuchElementException
from selenium.webdriver.common.by import By
import argparse
from BaseClassAndroid import TestConf
class ReportingTests(TestConf):
def test_navigation(self):
warnings.simplefilter("ignore", ResourceWarning)
try:
# assert 'Perfecto' in self.driver.title
print("-------------------------------------------")
#REPORTIUM TEST START
#self.reporting_client.step_start("BasicConnectionTest")
#DefaultGateWayAccessPoint = self.driver.find_element_by_xpath("//*[@label='Default Gateway IP']/parent::*/XCUIElementTypeButton").text
# print("Device-DefaultGateWay-AP: " + "'"+ DefaultGateWayAccessPoint + "'")
#self.assertNotEqual(DefaultGateWayAccessPoint, "N/A", "Check Wifi Access Point")
# print("Verify Internet Connection..")
# networkAccessPoint = self.driver.find_element_by_xpath("//*[@label='Network Connected']/parent::*/XCUIElementTypeButton").text
# print("Network-AccessPoint-Connected: " + "'"+ networkAccessPoint + "'")
#Open Setting Application
# print("Opening Settings App..")
# params = {'identifier': 'com.android.settings'}
#self.driver.execute_script('mobile:application:open', params)
# self.driver.execute_script('mobile:application:close', params)
# self.driver.execute_script('mobile:application:open', params)
# params = {'property': 'All'}
# deviceProperty = self.driver.execute_script('mobile:handset:info', params)
# print("ModelName: " + deviceProperty)
self.reporting_client.step_start("Pass Point Verification")
params = {'property': 'deviceId'}
deviceID = self.driver.execute_script('mobile:handset:info', params)
params = {'property': 'model'}
deviceModel = self.driver.execute_script('mobile:handset:info', params)
print("ModelName: " + deviceModel + " DeviceId: " + deviceID)
#modelName = self.driver.desired_capabilities['model']
#deviceID = self.driver.desired_capabilities['deviceId']
#
# print("DeviceID: " + deviceID)
#Close Settings App
# print("Close Settings App")
#self.driver.execute_script('mobile:application:close', params)
except NoSuchElementException as ex:
self.currentResult = False
#self.reporting_client.test_stop(TestResultFactory.create_failure("NoSuchElementException", ex))
print (ex.message)
self.currentResult = True
#self.reporting_client.test_stop(Tes
if __name__ == '__main__':
# parser = argparse.ArgumentParser(description="Perfecto Arguments")
#parser.add_argument(
# "-c",
# "--cloud_name",
# metavar="cloud_name",
# help="Perfecto cloud name. (E.g. demo)",
#)
# parser.add_argument(
# "-s",
# "--security_token",
# metavar="security_token",
# help="Perfecto cloud name. (E.g. demo)",
# )
#args = vars(parser.parse_args())
#if not args["cloud_name"]:
# parser.print_help()
# parser.error(
# "cloud_name parameter is empty. Pass the argument -c followed by cloud_name"
# )
# exit
#print(str(args["cloud_name"]))
unittest.main()

View File

@@ -1,535 +0,0 @@
import datetime
import sys
import os
import time
import warnings
from selenium.common.exceptions import NoSuchElementException
import urllib3
from perfecto.model.model import Job, Project
from perfecto import (PerfectoExecutionContext, PerfectoReportiumClient,TestContext, TestResultFactory)
import pytest
import logging
from urllib3 import exceptions
def pytest_addoption(parser):
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("wifi-SSID-5gl-Pwd", "Wifi 5g Password")
parser.addini("wifi-SSID-2g-Pwd", "Wifi 2g Password")
parser.addini("Default-SSID-5gl-perfecto-b", "Wifi 5g AP Name")
parser.addini("Default-SSID-2g-perfecto-b", "Wifi 2g AP Name")
parser.addini("Default-SSID-perfecto-b", "Wifi AP Name")
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",
# nargs="+",
default=["Perfecto"],
help="list of access points to test"
)
@pytest.fixture(scope="class")
def setup_perfectoMobileWeb(request):
from selenium import webdriver
driver = None
reporting_client = None
warnings.simplefilter("ignore", ResourceWarning)
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
capabilities = {
'platformName': request.config.getini("platformName-iOS"),
'model': request.config.getini("model-iOS"),
'browserName': request.config.getini("browserType-iOS"),
'securityToken' : request.config.getini("securityToken")
}
driver = webdriver.Remote('https://'+request.config.getini("perfectoURL")+'.perfectomobile.com/nexperience/perfectomobile/wd/hub', capabilities)
driver.implicitly_wait(25)
projectname = request.config.getini("projectName")
projectversion = request.config.getini("projectVersion")
jobname = request.config.getini("jobName")
jobnumber = request.config.getini("jobNumber")
tags = request.config.getini("reportTags")
testCaseName = request.config.getini("jobName")
print("Setting Perfecto ReportClient....")
perfecto_execution_context = PerfectoExecutionContext(driver, tags, Job(jobname, jobnumber),Project(projectname, projectversion))
reporting_client = PerfectoReportiumClient(perfecto_execution_context)
reporting_client.test_start(testCaseName, TestContext([], "Raj"))
if driver is None:
yield -1
else:
yield driver,reporting_client
try:
print(" -- Tear Down --")
reporting_client.test_stop(TestResultFactory.create_success())
print('Report-Url: ' + reporting_client.report_url() + '\n')
driver.close()
except Exception as e:
print(" -- Exception Not Able To close --")
print (e.message)
finally:
try:
driver.quit()
except Exception as e:
print(" -- Exception Not Able To Quit --")
print (e.message)
@pytest.fixture(scope="class")
def setup_perfectoMobile_iOS(request):
from appium import webdriver
driver = None
reporting_client = None
warnings.simplefilter("ignore", ResourceWarning)
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
capabilities = {
'platformName': request.config.getini("platformName-iOS"),
'model': request.config.getini("model-iOS"),
'securityToken' : request.config.getini("securityToken"),
'bundleId' : request.config.getini("bundleId-iOS"),
}
driver = webdriver.Remote('https://'+request.config.getini("perfectoURL")+'.perfectomobile.com/nexperience/perfectomobile/wd/hub', capabilities)
driver.implicitly_wait(25)
projectname = request.config.getini("projectName")
projectversion = request.config.getini("projectVersion")
jobname = request.config.getini("jobName")
jobnumber = request.config.getini("jobNumber")
tags = request.config.getini("reportTags")
testCaseName = request.config.getini("jobName")
print("Setting Perfecto ReportClient....")
perfecto_execution_context = PerfectoExecutionContext(driver, tags, Job(jobname, jobnumber),Project(projectname, projectversion))
reporting_client = PerfectoReportiumClient(perfecto_execution_context)
reporting_client.test_start(testCaseName, TestContext([], "Raj"))
if driver is None:
yield -1
else:
yield driver,reporting_client
try:
print(" -- Tear Down --")
reporting_client.test_stop(TestResultFactory.create_success())
print('Report-Url: ' + reporting_client.report_url() + '\n')
driver.close()
except Exception as e:
print(" -- Exception Not Able To close --")
print (e.message)
finally:
try:
driver.quit()
except Exception as e:
print(" -- Exception Not Able To Quit --")
print (e.message)
@pytest.fixture(scope="function")
def get_PassPointConniOS_data(request):
passPoint_data = {
"netAnalyzer-inter-Con-Xpath": "//*[@label='Network Connected']/parent::*/XCUIElementTypeButton",
"bundleId-iOS-Settings": request.config.getini("bundleId-iOS-Settings"),
"bundleId-iOS-Ping": request.config.getini("bundleId-iOS-Ping")
}
yield passPoint_data
@pytest.fixture(scope="function")
def get_APToMobileDevice_data(request):
passPoint_data = {
"webURL": "https://www.google.com",
"lblSearch": "//*[@class='gLFyf']",
"elelSearch": "(//*[@class='sbic sb43'])[1]",
"BtnRunSpeedTest": "//*[text()='RUN SPEED TEST']",
"downloadMbps": "//*[@id='knowledge-verticals-internetspeedtest__download']/P[@class='spiqle']",
"UploadMbps": "//*[@id='knowledge-verticals-internetspeedtest__upload']/P[@class='spiqle']",
"lblSearch2": "test "
}
yield passPoint_data
@pytest.fixture(scope="function")
def get_AccessPointConn_data(request):
passPoint_data = {
"bundleId-iOS-Settings": request.config.getini("bundleId-iOS-Settings"),
"bundleId-iOS-Ping": request.config.getini("bundleId-iOS-Ping"),
"Default-SSID-5gl-perfecto-b": request.config.getini("Default-SSID-5gl-perfecto-b"),
"Default-SSID-2g-perfecto-b": request.config.getini("Default-SSID-2g-perfecto-b"),
"Default-SSID-perfecto-b": request.config.getini("Default-SSID-perfecto-b")
}
yield passPoint_data
@pytest.fixture(scope="function")
def get_ToggleAirplaneMode_data(request):
passPoint_data = {
"bundleId-iOS-Settings": request.config.getini("bundleId-iOS-Settings"),
"lblSearch": "//*[@class='gLFyf']",
"elelSearch": "(//*[@class='sbic sb43'])[1]",
"BtnRunSpeedTest": "//*[text()='RUN SPEED TEST']",
"downloadMbps": "//*[@id='knowledge-verticals-internetspeedtest__download']/P[@class='spiqle']",
"UploadMbps": "//*[@id='knowledge-verticals-internetspeedtest__upload']/P[@class='spiqle']",
}
yield passPoint_data
@pytest.fixture(scope="function")
def get_ToggleWifiMode_data(request):
passPoint_data = {
"bundleId-iOS-Settings": request.config.getini("bundleId-iOS-Settings"),
"wifi-SSID-5gl-Pwd": request.config.getini("wifi-SSID-5gl-Pwd"),
"wifi-SSID-2g-Pwd": request.config.getini("wifi-SSID-2g-Pwd")
}
yield passPoint_data
def openApp(appName, setup_perfectoMobile):
#print("Refreshing App: " + appName)
setup_perfectoMobile[1].step_start("Opening App: " + appName)
params = {'identifier': appName}
#Open/Close/Open Action is performed to ensure the app is back to its Original Settings
setup_perfectoMobile[0].execute_script('mobile:application:open', params)
setup_perfectoMobile[0].execute_script('mobile:application:close', params)
setup_perfectoMobile[0].execute_script('mobile:application:open', params)
def closeApp(appName, setup_perfectoMobile):
#print("Closing App.." + appName)
setup_perfectoMobile[1].step_start("Closing App: " + appName)
params = {'identifier': appName}
setup_perfectoMobile[0].execute_script('mobile:application:close', params)
def set_APconnMobileDevice_iOS(WifiName, setup_perfectoMobile, connData):
print("Verifying Wifi/AP Connection Details....")
report = setup_perfectoMobile[1]
driver = setup_perfectoMobile[0]
report.step_start("Set Wifi Network to " + WifiName)
#Open Settings Application
openApp(connData["bundleId-iOS-Settings"], setup_perfectoMobile)
try:
# print("Verifying Connected Wifi Connection")
report.step_start("Verifying Connected Wifi Connection")
element = driver.find_element_by_xpath("//XCUIElementTypeCell[@name='Wi-Fi']/XCUIElementTypeStaticText[2]")
Wifi_AP_Name = element.text
except NoSuchElementException:
print("Exception: Verify Xpath - UpdateXpath")
#NEED to fail if Wifi AP NAME isn't in the approved list AKA 5g & 2g.
#print("Wifi Name Matches - Already Connected To: " + Wifi_AP_Name)
#print("Wifi Name Matches - Already Connected To: " + WifiName)
if Wifi_AP_Name.__eq__(WifiName):
print("Wifi Name Matches - Already Connected To: " + Wifi_AP_Name)
#Verify if Ap is connected with Wifi
report.step_start("Verify Wifi Connection Status..")
#print("Click Wifi Connection..")
element.click()
#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)
#Check AP Internet Error Msg
print("Checking Internet Connection Error..")
report.step_start("Checking Internet Connection Error..")
try:
WifiInternetErrMsg = driver.find_element_by_xpath("//*[@label='No Internet Connection']").text
except NoSuchElementException:
report.assertSoft
print("Wifi-AP Connected Successfully: " + Wifi_AP_Name)
else:
try:
report.step_start("Selecting Wifi...: " + WifiName)
element.click()
except NoSuchElementException:
print("Exception: Selection Wifi Network")
try:
wifiXpath2 = driver.find_element_by_xpath("//*[@label='"+ WifiName + "']")
wifiXpath2.click()
except NoSuchElementException:
print("\n Can't find Wifi/AP NAME.....CheckXpath & Wifi Name")
# print (e.message)
#Set password if Needed
try:
wifiPassword = driver.find_element_by_xpath("//*[@label='Password']")
wifiPassword.send_keys(connData["wifi-SSID-2g-Pwd"])
except NoSuchElementException:
print("Enter Password Page Not Loaded ")
try:
joinBTN = driver.find_element_by_xpath("//*[@label='Join']")
joinBTN.click()
except NoSuchElementException:
print("Join Button Not Enabled...Verify if Password is set properly ")
try:
WifiInternetErrMsg2 = driver.find_element_by_xpath("//*[@label='No Internet Connection']").text
except NoSuchElementException:
print("Wifi-AP Connected Successfully: " + WifiName)
def Toggle_AirplaneMode_iOS(setup_perfectoMobile, connData):
report = setup_perfectoMobile[1]
driver = setup_perfectoMobile[0]
#Open Settings Application
openApp(connData["bundleId-iOS-Settings"], setup_perfectoMobile)
#Toggle Airplane Mode
print("Toggle Airplane Mode..")
report.step_start("Toggle Airplane Mode")
try:
AirplaneMode = driver.find_element_by_xpath("//XCUIElementTypeSwitch[@label='Airplane Mode']")
#Toggle Airplane Mode
AirplaneMode.click()
#Verify Cellular Mode Text
report.step_start("Verify Cellular Mode")
try:
CellularMsgEle = driver.find_element_by_xpath("//*[@name='Airplane Mode' and @value='Airplane Mode']")
#ssertEqual(CellularMsgEle.text, "Airplane Mode", "Airplane Mode Not Triggerd")
print("Verify Cellular Mode Text: Airplane Mode Success")
except NoSuchElementException:
print("Cellular Mode Not in Airplane Mode: ERROR")
#Set Airplane Mode Back
AirplaneMode.click()
except NoSuchElementException:
print("Airplane Wifi Button not loaded...")
#Verify No Sim Card Installed Msg Popup
report.step_start("Verify No Sim Card Installed Msg Popup")
print("Verify No Sim Card Installed Msg Popup..")
try:
NoSimCardErrorMsg = driver.find_element_by_xpath("//*[@value='No SIM Card Installed']")
except NoSuchElementException:
print("No Sim Card AlertMsg")
#Click ok on No Sim Card Msg Popup
print("Click ok on No Sim Card Msg Popup..")
report.step_start("Click ok on No Sim Card Msg Popup")
try:
NoSimCardErrorMsgOK = driver.find_element_by_xpath("//*[@label='OK']")
NoSimCardErrorMsgOK.click()
except NoSuchElementException:
print("No Sim Card AlertMsg")
def verify_APconnMobileDevice_iOS(WifiName, setup_perfectoMobile, connData):
report = setup_perfectoMobile[1]
driver = setup_perfectoMobile[0]
report.step_start("Verifying WifiName: " + WifiName)
#Refresh Settings Application
openApp(connData["bundleId-iOS-Settings"], setup_perfectoMobile)
#Verifies if AP is connected to Wifi status
try:
# print("Verifying Connected Wifi Connection")
report.step_start("Verifying Connected Wifi Connection")
element = driver.find_element_by_xpath("//XCUIElementTypeCell[@name='Wi-Fi']/XCUIElementTypeStaticText[2]")
Wifi_AP_Name = element.text
except NoSuchElementException:
print("Exception: Verify Xpath - UpdateXpath")
try:
if Wifi_AP_Name.__eq__(WifiName):
print("Wifi Name Matched Successful ")
#print("Wifi_AP_ConnName: " + "'"+ Wifi_AP_Name + "'" + " Not Equal To: " + WifiName + "....Check AP Name Syntax")
return True
else:
print ("-- Wifi Don't Match Match -- ")
#print("Wifi_AP_ConnName: " + "'"+ Wifi_AP_Name + "'" + " Not Equal To: " + WifiName + "....Check AP Name Syntax")
return False
except NoSuchElementException:
print("Exception Checking Wifi/AP connection NAME...")
return None
def Toggle_WifiMode_iOS(setup_perfectoMobile, connData):
report = setup_perfectoMobile[1]
driver = setup_perfectoMobile[0]
#Open Settings Application
#openApp(connData["bundleId-iOS-Settings"], setup_perfectoMobile)
report.step_start("Toggle Wifi Mode")
print("Toggle Wifi Mode..")
try:
WifiMode = driver.find_element_by_xpath("//*[@label='Wi-Fi' and @value='1']")
#Toggle Wifi Mode
WifiMode.click()
#Verify Radio Button Mode
try:
WifiDissconnected = driver.find_element_by_xpath("//*[@label='Wi-Fi' and @value='0']")
#self.assertEqual(WifiDissconnected.text, "Airplane Mode", "Airplane Mode Not Triggerd")
print("Wifi Radio Button Toggled to Disable")
except NoSuchElementException:
print("Wifi Radio Button Not Disabled...")
#Set Airplane Mode Back
WifiDissconnected.click()
print("Wifi Radio Button Toggled to Enabled")
except NoSuchElementException:
print("Airplane Wifi Button not loaded...")
def get_WifiIPAddress_iOS(setup_perfectoMobile, connData):
report = setup_perfectoMobile[1]
driver = setup_perfectoMobile[0]
openApp(connData["bundleId-iOS-Settings"], setup_perfectoMobile)
try:
# print("Verifying Connected Wifi Connection")
report.step_start("Loading Wifi Page")
element = driver.find_element_by_xpath("//XCUIElementTypeCell[@name='Wi-Fi']/XCUIElementTypeStaticText[2]")
element.click()
except NoSuchElementException:
print("Exception: Verify Xpath - unable to click on Wifi")
report.step_start("Wifi Page")
WifiXpath = "//*[@label='selected']/parent::*/parent::*/XCUIElementTypeStaticText[@label='"+ connData["Default-SSID-perfecto-b"] + "']"
elementWifName = driver.find_element_by_xpath(WifiXpath)
#Check AP Internet Error Msg
print("Checking Internet Connection Error...")
report.step_start("Checking Internet Connection Error..")
try:
driver.implicitly_wait(5)
WifiInternetErrMsg = driver.find_element_by_xpath("//*[@label='No Internet Connection']").text
except NoSuchElementException:
#Need to fail test case
driver.implicitly_wait(25)
print("Wifi Connected without any errors: " + connData["Default-SSID-perfecto-b"])
#Fail TEST CASE
try:
WifiInternetInfo=driver.find_element_by_xpath("(//XCUIElementTypeButton[@label='More Info'])[1]")
WifiInternetInfo.click()
except NoSuchElementException:
print("Wifi-AP Connected Successfully: " + connData["Default-SSID-perfecto-b"])
try:
WifiIPaddress= driver.find_element_by_xpath("(//*[@label='Router']/parent::*/XCUIElementTypeStaticText)[2]").text
return WifiIPaddress
except NoSuchElementException:
print("Wifi-AP Connected Successfully: " + connData["Default-SSID-perfecto-b"])
return None
def ping_deftapps_iOS(setup_perfectoMobile, AP_IPaddress):
report = setup_perfectoMobile[1]
driver = setup_perfectoMobile[0]
report.step_start("Pinging deftapps....")
try:
pingHost = "//*[@value='<Hostname or IP address>']"
element2 = driver.find_element_by_xpath(pingHost)
element2.clear()
#element2.send_keys(AP_IPaddress)
element2.send_keys("8.8.8.8")
#Ping Enable
report.step_start("Pingin Host")
print("Pingin Host..")
element3 = driver.find_element_by_xpath("//*[@label='go']")
element3.click()
time.sleep(10)
#handle any popup
report.step_start("Stop Ping Host")
print("Stop Ping Host..")
element4 = driver.find_element_by_xpath("//*[@label='Stop']")
element4.click()
# /* Check Packet Loss */
report.step_start("Verifying Packet Loss..")
print("Verifying Packet Loss..")
try:
element5 = driver.find_element_by_xpath("//XCUIElementTypeStaticText[@label='0']")
#assertEqual(element5.text, "0", "Packet Loss Exist, Please Check Device")
except NoSuchElementException:
print("No Packet Loss Detected 1st Attempt")
report.step_start("Verifying Packet Sent..")
print("Verifying Packet Sent..")
try:
packetSent = driver.find_element_by_xpath("//XCUIElementTypeStaticText[@label='Sent']/parent::*/XCUIElementTypeStaticText[2]").text
#assertEqual(element5.text, "0", "Packet Loss Exist, Please Check Device")
except NoSuchElementException:
print("-------Exception: Packet Sent Error, check object ID")
report.step_start("Verifying Packet Received..")
print("Verifying Packet Received..")
try:
packetReceived = driver.find_element_by_xpath("//XCUIElementTypeStaticText[@label='Received']/parent::*/XCUIElementTypeStaticText[2]").text
#assertEqual(element5.text, "0", "Packet Loss Exist, Please Check Device")
except NoSuchElementException:
print("-------Exception: Packet Sent Error, check object ID")
print("Total Packet Sent: " + packetSent + " Packed Recieved: " + packetReceived)
# Also Check #Sendto: No route to host
print("Verifying No route to host Error Msg....")
report.step_start("Verifying No route to host Error Msg..")
try:
element7 = driver.find_element_by_xpath("(//XCUIElementTypeStaticText[@label='Sendto: No route to host'])[2]")
print("Packet Loss Detected on AP!!!!!: " + AP_IPaddress)
#self.assertNotEqual(element7.text, "Sendto: No route to host", "Packet Loss Exist, Please Check Device AP: " + Wifi_AP_Name)
except NoSuchElementException:
print("\nNo Packet Loss Detected on AP!!!!!: " + AP_IPaddress)
except NoSuchElementException:
print("Exception while ping Deft App on iOS")
return None
def tearDown(setup_perfectoMobile):
report = setup_perfectoMobile[1]
driver = setup_perfectoMobile[0]
report.step_start("Exception Failure Tear Down....")
try:
print(" -- Tear Down --")
report.test_stop(TestResultFactory.create_failure)
print('Report-Url: ' + report.report_url() + '\n')
driver.close()
except Exception as e:
print(" -- Exception Not Able To close --")
print (e.message)
finally:
try:
driver.quit()
except Exception as e:
print(" -- Exception Not Able To Quit --")
print (e.message)

View File

@@ -1,69 +0,0 @@
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
from conftest import tearDown
class TestVerifyAPToMobileDevice(object):
#@pytest.mark.sanity
#@pytest.mark.wpa2_personal
#@pytest.mark.VerifyApTo_MobileDeviceWeb
def test_VerifyApTo_MobileDeviceWeb(self, get_APToMobileDevice_data, setup_perfectoMobileWeb):
try:
report = setup_perfectoMobileWeb[1]
driver = setup_perfectoMobileWeb[0]
try:
report.step_start("Google Home Page")
driver.get(get_APToMobileDevice_data["webURL"])
elementFindTxt = driver.find_element_by_xpath(get_APToMobileDevice_data["lblSearch"])
elementFindTxt.send_keys("Internet Speed Test")
try:
elelSearch = driver.find_element_by_xpath(get_APToMobileDevice_data["elelSearch"])
elelSearch.click()
except NoSuchElementException:
print("Enter Not Active...")
report.step_start("Verify Run Button")
driver.find_element_by_xpath(get_APToMobileDevice_data["BtnRunSpeedTest"]).click()
get_APToMobileDevice_data["BtnRunSpeedTest"]
get_APToMobileDevice_data["BtnRunSpeedTest"]
#Get upload/Download Speed
try:
report.step_start("Get upload/Download Speed")
time.sleep(60)
downloadMbps = driver.find_element_by_xpath(get_APToMobileDevice_data["downloadMbps"])
downloadSpeed = downloadMbps.text
print("Download: " + downloadSpeed + " Mbps")
UploadMbps = driver.find_element_by_xpath(get_APToMobileDevice_data["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 = True
assert currentResult
except Exception as e:
print (e.message)
except exception as e:
print (e.message)
tearDown(setup_perfectoMobileWeb)

View File

@@ -1,52 +0,0 @@
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
from conftest import closeApp, openApp, ping_deftapps_iOS, Toggle_AirplaneMode_iOS, set_APconnMobileDevice_iOS, verify_APconnMobileDevice_iOS, get_WifiIPAddress_iOS
#from conftest import
class TestAccessPointConnection(object):
#@pytest.mark.sanity
#@pytest.mark.wpa2_personal
#@pytest.mark.VerifyApTo_MobileDeviceWeb
#@pytest.mark.parametrize('bundleID-iOS', [net.techet.netanalyzerlite])
def test_AccessPointConnection(self, get_AccessPointConn_data, setup_perfectoMobile_iOS):
try:
report = setup_perfectoMobile_iOS[1]
driver = setup_perfectoMobile_iOS[0]
connData = get_AccessPointConn_data
#Set Wifi/AP Mode
set_APconnMobileDevice_iOS(connData["Default-SSID-perfecto-b"], setup_perfectoMobile_iOS, connData)
#Need An ip To ping
wifi_ip = get_WifiIPAddress_iOS(setup_perfectoMobile_iOS, connData)
#Open Ping Application
openApp(connData["bundleId-iOS-Ping"], setup_perfectoMobile_iOS)
ping_deftapps_iOS(setup_perfectoMobile_iOS, wifi_ip)
#Toggle AirplaneMode
#Toggle_AirplaneMode_iOS(setup_perfectoMobile_iOS, get_ToggleAirplaneMode_data)
#Verify AP After AirplaneMode
#assert verify_APconnMobileDevice_iOS("Default-SSID-5gl-perfecto-b", setup_perfectoMobile_iOS, get_ToggleAirplaneMode_data)
except NoSuchElementException as ex:
self.currentResult = False
#report.test_stop(TestResultFactory.create_failure("NoSuchElementException", ex))
print (ex.message)
self.currentResult = True

View File

@@ -1,44 +0,0 @@
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
from urllib3 import exceptions
from conftest import closeApp, openApp, Toggle_AirplaneMode_iOS, set_APconnMobileDevice_iOS, tearDown
#from conftest import
class TestPassPointConnection(object):
#@pytest.mark.sanity
#@pytest.mark.wpa2_personal
#@pytest.mark.VerifyApTo_MobileDeviceWeb
#@pytest.mark.parametrize('bundleID-iOS', [net.techet.netanalyzerlite])
def test_PassPointConnection_Mobile(self, setup_perfectoMobile_iOS, get_PassPointConniOS_data):
#bundleId-iOS=net.techet.netanalyzerlite
#Wifi-5G or 2G Verification
try:
report = setup_perfectoMobile_iOS[1]
driver = setup_perfectoMobile_iOS[0]
connData = get_PassPointConniOS_data
#Set Wifi Access Mode to #Default-SSID-5gl-perfecto-b/#Default-SSID-2gl-perfecto-b
set_APconnMobileDevice_iOS("Default-SSID-5gl-perfecto-b", setup_perfectoMobile_iOS, get_PassPointConniOS_data)
#Toggle Airplane Mode and Ensure Wifi Connection.
Toggle_AirplaneMode_iOS(setup_perfectoMobile_iOS, get_PassPointConniOS_data)
#Close Settings App
closeApp(connData["bundleId-iOS-Settings"], setup_perfectoMobile_iOS)
except exceptions as e:
print (e.message)
tearDown(setup_perfectoMobile_iOS)
#except exception as ex

View File

@@ -1,41 +0,0 @@
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
from conftest import closeApp, openApp, Toggle_AirplaneMode_iOS, set_APconnMobileDevice_iOS, verify_APconnMobileDevice_iOS, tearDown
#from conftest import
class TestToggleAirplaneMode(object):
#@pytest.mark.sanity
#@pytest.mark.wpa2_personal
#@pytest.mark.VerifyApTo_MobileDeviceWeb
#@pytest.mark.parametrize('bundleID-iOS', [net.techet.netanalyzerlite])
def test_ToogleAirplaneMode(self, get_ToggleAirplaneMode_data, setup_perfectoMobile_iOS):
try:
report = setup_perfectoMobile_iOS[1]
driver = setup_perfectoMobile_iOS[0]
connData = get_ToggleAirplaneMode_data
#Set Wifi/AP Mode
set_APconnMobileDevice_iOS("Default-SSID-5gl-perfecto-b", setup_perfectoMobile_iOS, get_ToggleAirplaneMode_data)
#Toggle AirplaneMode
Toggle_AirplaneMode_iOS(setup_perfectoMobile_iOS, get_ToggleAirplaneMode_data)
#Verify AP After AirplaneMode
assert verify_APconnMobileDevice_iOS("Default-SSID-5gl-perfecto-b", setup_perfectoMobile_iOS, get_ToggleAirplaneMode_data)
except exception as e:
print (e.message)
tearDown(setup_perfectoMobile_iOS)

View File

@@ -1,42 +0,0 @@
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
from conftest import closeApp, openApp, Toggle_AirplaneMode_iOS, set_APconnMobileDevice_iOS, verify_APconnMobileDevice_iOS, Toggle_WifiMode_iOS
#from conftest import
class TestToggleAirplaneMode(object):
#@pytest.mark.sanity
#@pytest.mark.wpa2_personal
#@pytest.mark.VerifyApTo_MobileDeviceWeb
#@pytest.mark.parametrize('bundleID-iOS', [net.techet.netanalyzerlite])
def test_ToogleWifiMode(self, get_ToggleWifiMode_data, setup_perfectoMobile_iOS):
try:
report = setup_perfectoMobile_iOS[1]
driver = setup_perfectoMobile_iOS[0]
connData = get_ToggleWifiMode_data
#Set Wifi/AP Mode
set_APconnMobileDevice_iOS("Default-SSID-5gl-perfecto-b", setup_perfectoMobile_iOS, get_ToggleWifiMode_data)
#Toggle WifiMode
Toggle_WifiMode_iOS(setup_perfectoMobile_iOS, get_ToggleWifiMode_data)
#Verify AP After AirplaneMode
value = verify_APconnMobileDevice_iOS("Default-SSID-5gl-perfecto-b", setup_perfectoMobile_iOS, connData)
assert value
except NoSuchElementException as ex:
assert False
print (ex.message)

View File

@@ -1,50 +0,0 @@
[pytest]
addopts= --junitxml=test_everything.xml
# Perfecto Cloud parameters
perfectoURL=tip
securityToken=eyJhbGciOiJIUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICI3NzkzZGM0Ni1jZmU4LTQ4ODMtYjhiOS02ZWFlZGU2OTc2MDkifQ.eyJqdGkiOiJjYjRjYjQzYi05Y2FiLTQxNzQtOTYxYi04MDEwNTZkNDM2MzgiLCJleHAiOjAsIm5iZiI6MCwiaWF0IjoxNjExNTk0NzcxLCJpc3MiOiJodHRwczovL2F1dGgyLnBlcmZlY3RvbW9iaWxlLmNvbS9hdXRoL3JlYWxtcy90aXAtcGVyZmVjdG9tb2JpbGUtY29tIiwiYXVkIjoiaHR0cHM6Ly9hdXRoMi5wZXJmZWN0b21vYmlsZS5jb20vYXV0aC9yZWFsbXMvdGlwLXBlcmZlY3RvbW9iaWxlLWNvbSIsInN1YiI6IjdiNTMwYWUwLTg4MTgtNDdiOS04M2YzLTdmYTBmYjBkZGI0ZSIsInR5cCI6Ik9mZmxpbmUiLCJhenAiOiJvZmZsaW5lLXRva2VuLWdlbmVyYXRvciIsIm5vbmNlIjoiZTRmOTY4NjYtZTE3NS00YzM2LWEyODMtZTQwMmI3M2U5NzhlIiwiYXV0aF90aW1lIjowLCJzZXNzaW9uX3N0YXRlIjoiYWNkNTQ3MTctNzJhZC00MGU3LWI0ZDctZjlkMTAyNDRkNWZlIiwicmVhbG1fYWNjZXNzIjp7InJvbGVzIjpbIm9mZmxpbmVfYWNjZXNzIiwidW1hX2F1dGhvcml6YXRpb24iXX0sInJlc291cmNlX2FjY2VzcyI6eyJyZXBvcnRpdW0iOnsicm9sZXMiOlsiYWRtaW5pc3RyYXRvciJdfSwiYWNjb3VudCI6eyJyb2xlcyI6WyJtYW5hZ2UtYWNjb3VudCIsIm1hbmFnZS1hY2NvdW50LWxpbmtzIiwidmlldy1wcm9maWxlIl19fSwic2NvcGUiOiJvcGVuaWQgcHJvZmlsZSBvZmZsaW5lX2FjY2VzcyBlbWFpbCJ9.SOL-wlZiQ4BoLLfaeIW8QoxJ6xzrgxBjwSiSzkLBPYw
# Perfecto CI Report
projectName = TIP-Project
projectVersion = 1.0
jobName = Tip-CI-Test
jobNumber = 1
reportTags = TestTag
# iOS Device Capabilities
platformName-iOS=iOS
#manufacturer-iOS=Apple
model-iOS=iPhone-XR
bundleId-iOS=com.apple.Preferences
#default iOS settings app
bundleId-iOS-Settings=com.apple.Preferences
bundleId-iOS-Ping=com.deftapps.ping
browserType-iOS=safari
# Android Device Capabilities
platformName-android=Android
model-android=Android.*
appPackage-android=com.android.settings
wifi-SSID-5gl-Pwd=12345678
wifi-SSID-2g-Pwd=12345678
Default-SSID-5gl-perfecto-b=Default-SSID-5gl-perfecto-b
Default-SSID-2g-perfecto-b=Default-SSID-2g-perfecto-b
Default-SSID-perfecto-b=Default-SSID-5gl-perfecto-b
# iOS Device Parameters
#testbed-name=nola-ext-03
##equipment-model=ecw5410
#sdk-user-id=support@example.com
#sdk-user-password=support
# Android Device Parameters
#t#estrail-base-url=telecominfraproject.testrail.com
#t#estrail-project=opsfleet-wlan
#testrail-user-id=gleb@opsfleet.com
#testrail-user-password=use_command_line_to_pass_this