Merge branch 'master' into staing-wifi-fix-wifi-capacity

This commit is contained in:
Shivam Thakur
2021-07-23 08:05:27 +05:30
committed by GitHub
14 changed files with 278 additions and 163 deletions

View File

@@ -17,22 +17,10 @@ env:
# https://stackoverflow.com/questions/59977364/github-actions-how-use-strategy-matrix-with-script
testbeds: '[
{
"number": "ext-01",
"version": "1.1.0"
},
{
"number": "ext-02",
"version": "1.1.0"
},
{
"number": "ext-03",
"version": "1.1.0"
},
{
"number": "ext-04",
"version": "1.1.0"
},
{
"number": "01",
"version": "1.1.0"

View File

@@ -64,8 +64,15 @@ jobs:
test:
runs-on: ubuntu-latest
needs: [ build ]
strategy:
fail-fast: false
max-parallel: 1
matrix:
test_type: [android, ios]
outputs:
additional_markers: ${{ steps.marker.outputs.additional }}
steps:
- name: get EKS access credentials
run: aws eks update-kubeconfig --name ${{ env.AWS_EKS_NAME }}
@@ -77,7 +84,7 @@ jobs:
- name: set job name
id: job
run: echo "::set-output name=name::interop-ci-${{ github.run_number }}"
run: echo "::set-output name=name::interop-ci-${{ github.run_number }}-${{ matrix.test_type }}"
- name: create configuration.py secret
run: |
@@ -89,7 +96,12 @@ jobs:
- name: calculate marker expression
id: marker
run: |
MARKER_EXPRESSION="interop"
if [ "${{ matrix.test_type }}" = "android" ]; then
MARKER_EXPRESSION="interop_and"
else
MARKER_EXPRESSION="interop_ios"
fi
ADDITIONAL_MARKERS="${{ github.event.inputs.additional_markers || '' }}"
if [ ! -z "$ADDITIONAL_MARKERS" ]; then
MARKER_EXPRESSION="$MARKER_EXPRESSION and ${ADDITIONAL_MARKERS}"
@@ -117,7 +129,7 @@ jobs:
- -c
- |
cd tests
pytest -m "${{ steps.marker.outputs.expression }}" -s -vvv --testbed=interop -o 'jobName=Github-Interop' -o 'jobNumber=${{ github.run_number }}' --skip-testrail --alluredir=/tmp/allure-results
pytest -m "${{ steps.marker.outputs.expression }}" -s -vvv --testbed=interop -o 'jobName=Github-Interop-${{ matrix.test_type }}' -o 'jobNumber=${{ github.run_number }}' --skip-testrail --alluredir=/tmp/allure-results
ret=\$?
# sleep some time to be able to download the Allure results
sleep 60
@@ -166,7 +178,7 @@ jobs:
if: ${{ always() }}
uses: actions/upload-artifact@v2
with:
name: allure-results
name: allure-results-${{ matrix.test_type }}
path: allure-results
- name: cleanup
@@ -187,8 +199,13 @@ jobs:
- uses: actions/download-artifact@v2
with:
name: allure-results
path: allure-results
name: allure-results-android
path: allure-results-android
- uses: actions/download-artifact@v2
with:
name: allure-results-ios
path: allure-results-ios
- name: checkout testing repo
uses: actions/checkout@v2
@@ -205,12 +222,13 @@ jobs:
- name: copy history into results
run: |
if [ -e "reports/interop/interop/latest" ] ; then
cp -r reports/interop/interop/latest/history/ allure-results/history
cp -r reports/interop/interop/latest/history/ allure-results-ios/history
cp -r reports/interop/interop/latest/history/ allure-results-android/history
fi
- name: add report metadata
run: |
cat << EOF >> allure-results/environment.properties
cat << EOF >> allure-results-android/environment.properties
Testbed=interop
Tests.CommitId=$(cd wlan-testing && git rev-parse --short HEAD)
CiRun.Id=${{ github.run_id }}
@@ -219,7 +237,7 @@ jobs:
EOF
- name: generate Allure report
run: allure-${{ env.ALLURE_CLI_VERSION }}/bin/allure generate
run: allure-${{ env.ALLURE_CLI_VERSION }}/bin/allure generate allure-results-android allure-results-ios
- name: upload Allure report as artifact
uses: actions/upload-artifact@v2
@@ -229,7 +247,10 @@ jobs:
# doing this to be able to aggregate multiple reports together later on
- name: copy results into report
run: cp -r allure-results allure-report/results
run: |
mkdir -p allure-report/results
cp -r allure-results-android/* allure-report/results
cp -r allure-results-ios/* allure-report/results
- name: copy new report
run: |

View File

@@ -84,16 +84,33 @@ jobs:
sed -i '/wlan-cloud-ucentralgw@/s/ref=.*/ref='${{ matrix.ucentralgw_version }}'\"/g' Chart.yaml
sed -i '/wlan-cloud-ucentralgw-ui@/s/ref=.*/ref='${{ matrix.ucentralgwui_version }}'\"/g' Chart.yaml
sed -i '/wlan-cloud-ucentralsec@/s/ref=.*/ref='${{ matrix.ucentralsec_version }}'\"/g' Chart.yaml
export UCENTRALGW_VERSION_TAG=$(echo ${{ matrix.ucentralgw_version }} | tr '/' '-')
export UCENTRALGWUI_VERSION_TAG=$(echo ${{ matrix.ucentralgwui_version }} | tr '/' '-')
export UCENTRALSEC_VERSION_TAG=$(echo ${{ matrix.ucentralsec_version }} | tr '/' '-')
helm repo add bitnami https://charts.bitnami.com/bitnami
helm repo update
helm dependency update
helm upgrade --install --create-namespace \
--namespace ucentral-${{ matrix.namespace }} --wait --timeout 20m \
-f ../../toolsmith/helm-values/assembly-ucentral/values.ucentral-${{ matrix.namespace }}.yaml \
-f ../../toolsmith/helm-values/assembly-ucentral/values.ucentral-qa.yaml \
--set ucentralgw.configProperties."rtty\.token"=${{ secrets.RTTY_TOKEN }} \
--set ucentralsec.configProperties."authentication\.default\.username"=${{ secrets.UCENTRALGW_AUTH_USERNAME }} \
--set ucentralsec.configProperties."authentication\.default\.password"=${{ secrets.UCENTRALGW_AUTH_PASSWORD }} \
--set rttys.config.token=${{ secrets.RTTY_TOKEN }} \
--set ucentralgw.services.ucentralgw.annotations."external-dns\.alpha\.kubernetes\.io/hostname"=gw-ucentral-${{ matrix.namespace }}.cicd.lab.wlan.tip.build \
--set ucentralgw.configProperties."ucentral\.fileuploader\.host\.0\.name"=gw-ucentral-${{ matrix.namespace }}.cicd.lab.wlan.tip.build \
--set ucentralgw.configProperties."rtty\.server"=rtty-ucentral-${{ matrix.namespace }}.cicd.lab.wlan.tip.build \
--set ucentralgw.configProperties."ucentral\.system\.uri\.public"=https://gw-ucentral-${{ matrix.namespace }}.cicd.lab.wlan.tip.build:16002 \
--set ucentralgw.configProperties."ucentral\.system\.uri\.private"=https://gw-ucentral-${{ matrix.namespace }}.cicd.lab.wlan.tip.build:17002 \
--set ucentralgw.configProperties."ucentral\.system\.uri\.ui"=https://webui-ucentral-${{ matrix.namespace }}.cicd.lab.wlan.tip.build \
--set ucentralsec.services.ucentralsec.annotations."external-dns\.alpha\.kubernetes\.io/hostname"=sec-ucentral-${{ matrix.namespace }}.cicd.lab.wlan.tip.build \
--set ucentralsec.configProperties."ucentral\.system\.uri\.public"=https://sec-ucentral-${{ matrix.namespace }}.cicd.lab.wlan.tip.build:16001 \
--set ucentralsec.configProperties."ucentral\.system\.uri\.private"=https://sec-ucentral-${{ matrix.namespace }}.cicd.lab.wlan.tip.build:17001 \
--set ucentralsec.configProperties."ucentral\.system\.uri\.ui"=https://webui-ucentral-${{ matrix.namespace }}.cicd.lab.wlan.tip.build \
--set rttys.services.rttys.annotations."external-dns\.alpha\.kubernetes\.io/hostname"=rtty-ucentral-${{ matrix.namespace }}.cicd.lab.wlan.tip.build \
--set ucentralgwui.ingresses.default.annotations."external-dns\.alpha\.kubernetes\.io/hostname"=webui-ucentral-${{ matrix.namespace }}.cicd.lab.wlan.tip.build \
--set ucentralgwui.ingresses.default.hosts={webui-ucentral-${{ matrix.namespace }}.cicd.lab.wlan.tip.build} \
--set ucentralgwui.public_env_variables.DEFAULT_UCENTRALSEC_URL=https://sec-ucentral-${{ matrix.namespace }}.cicd.lab.wlan.tip.build:16001 \
--set-file ucentralgw.certs."restapi-cert\.pem"=../../cert.pem \
--set-file ucentralgw.certs."restapi-key\.pem"=../../key.pem \
--set-file ucentralgw.certs."websocket-cert\.pem"=../../cert.pem \
@@ -102,9 +119,9 @@ jobs:
--set-file rttys.certs."restapi-key\.pem"=../../key.pem \
--set-file ucentralsec.certs."restapi-cert\.pem"=../../cert.pem \
--set-file ucentralsec.certs."restapi-key\.pem"=../../key.pem \
--set ucentralgw.images.ucentralgw.tag=${{ matrix.ucentralgw_version }} \
--set ucentralgwui.images.ucentralgwui.tag=${{ matrix.ucentralgwui_version }} \
--set ucentralsec.images.ucentralsec.tag=${{ matrix.ucentralsec_version }} \
--set ucentralgw.images.ucentralgw.tag=$UCENTRALGW_VERSION_TAG \
--set ucentralgwui.images.ucentralgwui.tag=$UCENTRALGWUI_VERSION_TAG \
--set ucentralsec.images.ucentralsec.tag=$UCENTRALSEC_VERSION_TAG \
tip-ucentral .
- name: Show resource state on deployment failure

View File

@@ -13,6 +13,14 @@ jobs:
container: python:3.8
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v2
with:
repository: Telecominfraproject/wlan-lanforge-scripts
path: lanforge/lanforge-scripts
- uses: actions/checkout@v2
with:
ref: badges
path: badges
- name: add TIP pypi repo
run: |
@@ -28,12 +36,13 @@ jobs:
working-directory: tests
run: |
mkdir -p ../.img
wget https://img.shields.io/badge/total_tests-$(pytest --collect-only -q | tail -1 | cut -d ' ' -f 1)-green?style=flat-square -O ../.img/total-count.svg
wget https://img.shields.io/badge/interop_tests-$(pytest --collect-only -m "interop" -q | tail -1 | cut -d '/' -f 1)-green?style=flat-square -O ../.img/interop-count.svg
wget https://img.shields.io/badge/sanity_tests-$(pytest --collect-only -m "sanity and not interop" -q | tail -1 | cut -d '/' -f 1)-green?style=flat-square -O ../.img/sanity-count.svg
wget https://img.shields.io/badge/performance_tests-$(pytest --collect-only -m "performance" -q | tail -1 | cut -d '/' -f 1)-green?style=flat-square -O ../.img/performance-count.svg
wget https://img.shields.io/badge/total_tests-$(pytest --collect-only -q | tail -1 | cut -d ' ' -f 1)-green?style=flat-square -O ../badges/total-count.svg
wget https://img.shields.io/badge/interop_tests-$(pytest --collect-only -m "interop" -q | tail -1 | cut -d '/' -f 1)-green?style=flat-square -O ../badges/interop-count.svg
wget https://img.shields.io/badge/sanity_tests-$(pytest --collect-only -m "sanity and not interop" -q | tail -1 | cut -d '/' -f 1)-green?style=flat-square -O ../badges/sanity-count.svg
wget https://img.shields.io/badge/performance_tests-$(pytest --collect-only -m "performance" -q | tail -1 | cut -d '/' -f 1)-green?style=flat-square -O ../badges/performance-count.svg
- name: commit changes
working-directory: badges
run: |
git config --global user.name "github-actions[bot]"
git config --global user.email "41898282+github-actions[bot]@users.noreply.github.com"
@@ -45,4 +54,6 @@ jobs:
uses: ad-m/github-push-action@v0.6.0
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
branch: master
directory: badges
branch: badges
force: true

View File

@@ -62,16 +62,16 @@ http://pythontesting.net/framework/pytest/pytest-introduction/
### Test status
![total test count](.img/total-count.svg)
![total test count](https://raw.githubusercontent.com/Telecominfraproject/wlan-testing/badges/total-count.svg)
[![sanity testing](https://github.com/Telecominfraproject/wlan-testing/actions/workflows/sanity.yml/badge.svg)](https://github.com/Telecominfraproject/wlan-testing/actions/workflows/sanity.yml)
![sanity test count](.img/sanity-count.svg)
![sanity test count](https://raw.githubusercontent.com/Telecominfraproject/wlan-testing/badges/sanity-count.svg)
[![interop testing](https://github.com/Telecominfraproject/wlan-testing/actions/workflows/interop.yml/badge.svg)](https://github.com/Telecominfraproject/wlan-testing/actions/workflows/interop.yml)
![interop test count](.img/interop-count.svg)
![interop test count](https://raw.githubusercontent.com/Telecominfraproject/wlan-testing/badges/interop-count.svg)
[![performance testing](https://github.com/Telecominfraproject/wlan-testing/actions/workflows/performance.yml/badge.svg)](https://github.com/Telecominfraproject/wlan-testing/actions/workflows/performance.yml)
![performance test count](.img/performance-count.svg)
![performance test count](https://raw.githubusercontent.com/Telecominfraproject/wlan-testing/badges/performance-count.svg)
### Best Practice

View File

@@ -113,42 +113,60 @@ def setup_perfectoMobile_android(request):
reporting_client.test_start(testCaseName, TestContext([], "Perforce"))
def teardown():
reporting_client.test_stop(TestResultFactory.create_failure("See Allure Report"))
driver.close()
print("\n------------")
print("Driver Closed")
try:
print("\n\n---------- Tear Down ----------")
testFailed = request.session.testsfailed
if testFailed>0:
print ("Test Case Failure, please check report link: " + testCaseName)
exceptionFailure = request.config.cache.get("SelectingWifiFailed", None)
reporting_client.test_stop(TestResultFactory.create_failure(exceptionFailure))
#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()
driver.quit()
print("Driver Quit")
print("------------")
except Exception as e:
print(" -- Exception While Tear Down --")
reporting_client.test_stop(TestResultFactory.create_failure(e))
print('Report-Url-Failure: ' + reporting_client.report_url() + '\n')
driver.close()
print (e)
finally:
try:
driver.quit()
except Exception as e:
print(" -- Exception Not Able To Quit --")
print (e)
print(" -- Exception Not Able To Quit --")
print(e)
# try:
# # print("\n\n---------- Tear Down ----------")
# testFailed = 0
# testFailed = request.session.testsfailed
# print("Testcase Failure Count: ", str(testFailed))
# if testFailed>0:
# print ("Test Case Failure, please check report link: " + testCaseName)
# try:
# exceptionFailure = request.config.cache.get("SelectingWifiFailed", None)
# reporting_client.test_stop(TestResultFactory.create_failure(exceptionFailure))
# except Exception as e:
# reporting_client.test_stop(TestResultFactory.create_failure("Test Case failed -- See perfecto reports"))
#
# 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("----------------------------------------------------------")
# # reporting_client.test_stop()
# driver.close()
# except Exception as e:
# print(" -- Exception While Tear Down --")
# reporting_client.test_stop(TestResultFactory.create_failure(e))
# print('Report-Url-Failure: ' + reporting_client.report_url() + '\n')
# driver.close()
# print (e)
# finally:
# try:
# driver.quit()
# except Exception as e:
# print(" -- Exception Not Able To Quit --")
# print (e)
request.addfinalizer(teardown)

View File

@@ -1,35 +1,3 @@
"""
ec420 basic-03
ecw5410 basic-04
ecw5211 not available in basic
wf188n basic-05
eap102 basic-06
eap101 basic-02
wf194c baisc-08-02
ssh -C -L 8800:lf1:4002 -L 8801:lf1:5901 -L 8802:lf1:8080 -L 8803:lab-ctlr:22 \ # basic-01
-L 8720:lf2:4002 -L 8721:lf2:5901 -L 8722:lf2:8080 -L 8723:lab-ctlr:22 \ # basic-02
-L 8830:lf3:4002 -L 8831:lf3:5901 -L 8832:lf3:8080 -L 8833:lab-ctlr:22 \ # basic-03
-L 8810:lf4:4002 -L 8811:lf4:5901 -L 8812:lf4:8080 -L 8813:lab-ctlr:22 \ # basic-04
-L 8850:lf12:4002 -L 8851:lf12:5901 -L 8852:lf12:8080 -L 8853:lab-ctlr4:22 \ # basic-05
-L 8860:lf13:4002 -L 8861:lf13:5901 -L 8862:lf13:8080 -L 8863:lab-ctlr4:22 \ # basic-06
-L 8870:lf14:4002 -L 8871:lf14:5901 -L 8872:lf14:8080 -L 8873:lab-ctlr4:22 \ # basic-07
-L 8880:lf15:4002 -L 8881:lf15:5901 -L 8882:lf15:8080 -L 8883:lab-ctlr4:22 \ # basic-08
ubuntu@3.130.51.163
ssh -C -L 8800:lf1:4002 -L 8801:lf1:5901 -L 8802:lf1:8080 -L 8803:lab-ctlr:22 \
-L 8720:lf2:4002 -L 8721:lf2:5901 -L 8722:lf2:8080 -L 8723:lab-ctlr:22 \
-L 8830:lf3:4002 -L 8831:lf3:5901 -L 8832:lf3:8080 -L 8833:lab-ctlr:22 \
-L 8810:lf4:4002 -L 8811:lf4:5901 -L 8812:lf4:8080 -L 8813:lab-ctlr:22 \
-L 8850:lf12:4002 -L 8851:lf12:5901 -L 8852:lf12:8080 -L 8853:lab-ctlr4:22 \
-L 8860:lf13:4002 -L 8861:lf13:5901 -L 8862:lf13:8080 -L 8863:lab-ctlr4:22 \
-L 8870:lf14:4002 -L 8871:lf14:5901 -L 8872:lf14:8080 -L 8873:lab-ctlr4:22 \
-L 8880:lf15:4002 -L 8881:lf15:5901 -L 8882:lf15:8080 -L 8883:lab-ctlr4:22 \
ubuntu@3.130.51.163
"""
CONFIGURATION = {
@@ -61,14 +29,14 @@ CONFIGURATION = {
"ip": "10.28.3.6",
"port": 8080,
"ssh_port": 22,
"2.4G-Radio": ["wiphy4"],
"5G-Radio": ["wiphy5"],
"AX-Radio": ["wiphy0", "wiphy1", "wiphy2", "wiphy3"],
"2.4G-Radio": ["1.1.wiphy4"],
"5G-Radio": ["1.1.wiphy5"],
"AX-Radio": ["1.1.wiphy0", "1.1.wiphy1", "1.1.wiphy2", "1.1.wiphy3"],
"upstream": "1.1.eth2",
"upstream_subnet": "10.28.2.1/24",
"uplink": "1.1.eth3",
"2.4G-Station-Name": "wlan0",
"5G-Station-Name": "wlan0",
"5G-Station-Name": "wlan1",
"AX-Station-Name": "ax"
}
}

View File

@@ -45,7 +45,7 @@ class TestAcessPointConnection(object):
@pytest.mark.fiveg
@pytest.mark.wpa2_personal
def test_AccessPointConnection_5g_WPA2_Personal(self, request, get_APToMobileDevice_data, setup_perfectoMobile_android):
def test_AccessPointConnection_5g_WPA2_Personal(self, request, get_vif_state, get_APToMobileDevice_data, setup_perfectoMobile_android):
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssidName = profile_data["ssid_name"]
@@ -53,6 +53,10 @@ class TestAcessPointConnection(object):
print ("SSID_NAME: " + ssidName)
print ("SSID_PASS: " + ssidPassword)
if ssidName not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
report = setup_perfectoMobile_android[1]
driver = setup_perfectoMobile_android[0]
connData = get_APToMobileDevice_data
@@ -71,7 +75,7 @@ class TestAcessPointConnection(object):
@pytest.mark.twog
@pytest.mark.wpa2_personal
def test_AccessPointConnection_2g_WPA2_Personal(self,request, get_ToggleAirplaneMode_data, setup_perfectoMobile_android):
def test_AccessPointConnection_2g_WPA2_Personal(self,request, get_vif_state, get_ToggleAirplaneMode_data, setup_perfectoMobile_android):
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssidName = profile_data["ssid_name"]
@@ -79,6 +83,10 @@ class TestAcessPointConnection(object):
print ("SSID_NAME: " + ssidName)
print ("SSID_PASS: " + ssidPassword)
if ssidName not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
report = setup_perfectoMobile_android[1]
driver = setup_perfectoMobile_android[0]
connData = get_ToggleAirplaneMode_data
@@ -97,7 +105,7 @@ class TestAcessPointConnection(object):
@pytest.mark.fiveg
@pytest.mark.wpa
def test_AccessPointConnection_5g_WPA(self, request, get_ToggleAirplaneMode_data, setup_perfectoMobile_android):
def test_AccessPointConnection_5g_WPA(self, request, get_vif_state, get_ToggleAirplaneMode_data, setup_perfectoMobile_android):
profile_data = setup_params_general["ssid_modes"]["wpa"][1]
ssidName = profile_data["ssid_name"]
@@ -105,6 +113,10 @@ class TestAcessPointConnection(object):
print ("SSID_NAME: " + ssidName)
print ("SSID_PASS: " + ssidPassword)
if ssidName not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
report = setup_perfectoMobile_android[1]
driver = setup_perfectoMobile_android[0]
connData = get_ToggleAirplaneMode_data
@@ -123,7 +135,7 @@ class TestAcessPointConnection(object):
@pytest.mark.twog
@pytest.mark.wpa
def test_AccessPointConnection_2g_WPA(self, request, get_ToggleAirplaneMode_data, setup_perfectoMobile_android):
def test_AccessPointConnection_2g_WPA(self, request, get_vif_state, get_ToggleAirplaneMode_data, setup_perfectoMobile_android):
profile_data = setup_params_general["ssid_modes"]["wpa"][0]
ssidName = profile_data["ssid_name"]
@@ -131,6 +143,10 @@ class TestAcessPointConnection(object):
print ("SSID_NAME: " + ssidName)
print ("SSID_PASS: " + ssidPassword)
if ssidName not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
report = setup_perfectoMobile_android[1]
driver = setup_perfectoMobile_android[0]
connData = get_ToggleAirplaneMode_data

View File

@@ -45,7 +45,7 @@ class TestToggleAirplaneModeAndroid(object):
@pytest.mark.fiveg
@pytest.mark.wpa2_personal
def test_ToogleAirplaneMode_5g_WPA2_Personal(self, request, get_ToggleAirplaneMode_data, setup_perfectoMobile_android):
def test_ToogleAirplaneMode_5g_WPA2_Personal(self, request, get_vif_state, get_ToggleAirplaneMode_data, setup_perfectoMobile_android):
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssidName = profile_data["ssid_name"]
@@ -53,6 +53,10 @@ class TestToggleAirplaneModeAndroid(object):
print ("SSID_NAME: " + ssidName)
print ("SSID_PASS: " + ssidPassword)
if ssidName not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
report = setup_perfectoMobile_android[1]
driver = setup_perfectoMobile_android[0]
connData = get_ToggleAirplaneMode_data
@@ -68,7 +72,7 @@ class TestToggleAirplaneModeAndroid(object):
@pytest.mark.twog
@pytest.mark.wpa2_personal
def test_ToogleAirplaneMode_2g_WPA2_Personal(self, request, get_ToggleAirplaneMode_data, setup_perfectoMobile_android):
def test_ToogleAirplaneMode_2g_WPA2_Personal(self, request, get_vif_state, get_ToggleAirplaneMode_data, setup_perfectoMobile_android):
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssidName = profile_data["ssid_name"]
@@ -76,6 +80,10 @@ class TestToggleAirplaneModeAndroid(object):
print ("SSID_NAME: " + ssidName)
print ("SSID_PASS: " + ssidPassword)
if ssidName not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
report = setup_perfectoMobile_android[1]
driver = setup_perfectoMobile_android[0]
connData = get_ToggleAirplaneMode_data
@@ -91,7 +99,7 @@ class TestToggleAirplaneModeAndroid(object):
@pytest.mark.fiveg
@pytest.mark.wpa
def test_ToogleAirplaneMode_5g_WPA(self, request, get_ToggleAirplaneMode_data, setup_perfectoMobile_android):
def test_ToogleAirplaneMode_5g_WPA(self, request, get_vif_state, get_ToggleAirplaneMode_data, setup_perfectoMobile_android):
profile_data = setup_params_general["ssid_modes"]["wpa"][1]
ssidName = profile_data["ssid_name"]
@@ -99,6 +107,10 @@ class TestToggleAirplaneModeAndroid(object):
print ("SSID_NAME: " + ssidName)
print ("SSID_PASS: " + ssidPassword)
if ssidName not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
report = setup_perfectoMobile_android[1]
driver = setup_perfectoMobile_android[0]
connData = get_ToggleAirplaneMode_data
@@ -114,7 +126,7 @@ class TestToggleAirplaneModeAndroid(object):
@pytest.mark.twog
@pytest.mark.wpa
def test_ToogleAirplaneMode_2g_WPA(self, request, get_ToggleAirplaneMode_data, setup_perfectoMobile_android):
def test_ToogleAirplaneMode_2g_WPA(self, request, get_vif_state, get_ToggleAirplaneMode_data, setup_perfectoMobile_android):
profile_data = setup_params_general["ssid_modes"]["wpa"][0]
ssidName = profile_data["ssid_name"]
@@ -122,6 +134,10 @@ class TestToggleAirplaneModeAndroid(object):
print ("SSID_NAME: " + ssidName)
print ("SSID_PASS: " + ssidPassword)
if ssidName not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
report = setup_perfectoMobile_android[1]
driver = setup_perfectoMobile_android[0]
connData = get_ToggleAirplaneMode_data

View File

@@ -45,7 +45,7 @@ class TestPassPointConnection(object):
@pytest.mark.fiveg
@pytest.mark.wpa2_personal
def test_PassPointConnection_5g_WPA2_Personal(self, request, get_APToMobileDevice_data, setup_perfectoMobile_android):
def test_PassPointConnection_5g_WPA2_Personal(self, request, get_vif_state, get_APToMobileDevice_data, setup_perfectoMobile_android):
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssidName = profile_data["ssid_name"]
@@ -53,6 +53,10 @@ class TestPassPointConnection(object):
print ("SSID_NAME: " + ssidName)
print ("SSID_PASS: " + ssidPassword)
if ssidName not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
report = setup_perfectoMobile_android[1]
driver = setup_perfectoMobile_android[0]
connData = get_APToMobileDevice_data
@@ -71,7 +75,7 @@ class TestPassPointConnection(object):
@pytest.mark.twog
@pytest.mark.wpa2_personal
def test_PassPointConnection_2g_WPA2_Personal(self, request, get_ToggleAirplaneMode_data, setup_perfectoMobile_android):
def test_PassPointConnection_2g_WPA2_Personal(self, request, get_vif_state, get_ToggleAirplaneMode_data, setup_perfectoMobile_android):
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssidName = profile_data["ssid_name"]
@@ -79,6 +83,10 @@ class TestPassPointConnection(object):
print ("SSID_NAME: " + ssidName)
print ("SSID_PASS: " + ssidPassword)
if ssidName not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
report = setup_perfectoMobile_android[1]
driver = setup_perfectoMobile_android[0]
connData = get_ToggleAirplaneMode_data
@@ -97,7 +105,7 @@ class TestPassPointConnection(object):
@pytest.mark.fiveg
@pytest.mark.wpa
def test_PassPointConnection_5g_WPA(self, request, get_ToggleAirplaneMode_data, setup_perfectoMobile_android):
def test_PassPointConnection_5g_WPA(self, request, get_vif_state, get_ToggleAirplaneMode_data, setup_perfectoMobile_android):
profile_data = setup_params_general["ssid_modes"]["wpa"][1]
ssidName = profile_data["ssid_name"]
@@ -105,6 +113,10 @@ class TestPassPointConnection(object):
print ("SSID_NAME: " + ssidName)
print ("SSID_PASS: " + ssidPassword)
if ssidName not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
report = setup_perfectoMobile_android[1]
driver = setup_perfectoMobile_android[0]
connData = get_ToggleAirplaneMode_data
@@ -123,7 +135,7 @@ class TestPassPointConnection(object):
@pytest.mark.twog
@pytest.mark.wpa
def test_PassPointConnection_2g_WPA(self, request, get_ToggleAirplaneMode_data, setup_perfectoMobile_android):
def test_PassPointConnection_2g_WPA(self, request, get_vif_state, get_ToggleAirplaneMode_data, setup_perfectoMobile_android):
profile_data = setup_params_general["ssid_modes"]["wpa"][0]
ssidName = profile_data["ssid_name"]
@@ -131,6 +143,10 @@ class TestPassPointConnection(object):
print ("SSID_NAME: " + ssidName)
print ("SSID_PASS: " + ssidPassword)
if ssidName not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
report = setup_perfectoMobile_android[1]
driver = setup_perfectoMobile_android[0]
connData = get_ToggleAirplaneMode_data

View File

@@ -45,7 +45,7 @@ class TestToggleWifiMode(object):
@pytest.mark.fiveg
@pytest.mark.wpa2_personal
def test_ToogleWifiMode_5g_WPA2_Personal(self, request, get_ToggleWifiMode_data, setup_perfectoMobile_android):
def test_ToogleWifiMode_5g_WPA2_Personal(self, request, get_vif_state, get_ToggleWifiMode_data, setup_perfectoMobile_android):
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssidName = profile_data["ssid_name"]
@@ -53,6 +53,10 @@ class TestToggleWifiMode(object):
print ("SSID_NAME: " + ssidName)
print ("SSID_PASS: " + ssidPassword)
if ssidName not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
report = setup_perfectoMobile_android[1]
driver = setup_perfectoMobile_android[0]
connData = get_ToggleWifiMode_data
@@ -68,7 +72,7 @@ class TestToggleWifiMode(object):
@pytest.mark.twog
@pytest.mark.wpa2_personal
def test_ToogleWifiMode_2g_WPA2_Personal(self, request, get_ToggleWifiMode_data, setup_perfectoMobile_android):
def test_ToogleWifiMode_2g_WPA2_Personal(self, request, get_vif_state, get_ToggleWifiMode_data, setup_perfectoMobile_android):
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssidName = profile_data["ssid_name"]
@@ -76,6 +80,10 @@ class TestToggleWifiMode(object):
print ("SSID_NAME: " + ssidName)
print ("SSID_PASS: " + ssidPassword)
if ssidName not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
report = setup_perfectoMobile_android[1]
driver = setup_perfectoMobile_android[0]
connData = get_ToggleWifiMode_data
@@ -91,7 +99,7 @@ class TestToggleWifiMode(object):
@pytest.mark.fiveg
@pytest.mark.wpa
def test_ToogleWifiMode_5g_WPA(self, request, get_ToggleWifiMode_data, setup_perfectoMobile_android):
def test_ToogleWifiMode_5g_WPA(self, request, get_vif_state, get_ToggleWifiMode_data, setup_perfectoMobile_android):
profile_data = setup_params_general["ssid_modes"]["wpa"][1]
ssidName = profile_data["ssid_name"]
@@ -99,6 +107,10 @@ class TestToggleWifiMode(object):
print ("SSID_NAME: " + ssidName)
print ("SSID_PASS: " + ssidPassword)
if ssidName not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
report = setup_perfectoMobile_android[1]
driver = setup_perfectoMobile_android[0]
connData = get_ToggleWifiMode_data
@@ -114,7 +126,7 @@ class TestToggleWifiMode(object):
@pytest.mark.twog
@pytest.mark.wpa
def test_ToogleWifiMode_2g_WPA(self, request, get_ToggleWifiMode_data, setup_perfectoMobile_android):
def test_ToogleWifiMode_2g_WPA(self, request, get_vif_state, get_ToggleWifiMode_data, setup_perfectoMobile_android):
profile_data = setup_params_general["ssid_modes"]["wpa"][0]
ssidName = profile_data["ssid_name"]
@@ -122,6 +134,10 @@ class TestToggleWifiMode(object):
print ("SSID_NAME: " + ssidName)
print ("SSID_PASS: " + ssidPassword)
if ssidName not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
report = setup_perfectoMobile_android[1]
driver = setup_perfectoMobile_android[0]
connData = get_ToggleWifiMode_data

View File

@@ -45,7 +45,7 @@ class TestNatMode(object):
@pytest.mark.fiveg
@pytest.mark.wpa2_personal
def test_ClientConnectivity_5g_WPA2_Personal(self, request, get_APToMobileDevice_data, setup_perfectoMobile_android):
def test_ClientConnectivity_5g_WPA2_Personal(self, request, get_vif_state, get_APToMobileDevice_data, setup_perfectoMobile_android):
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][1]
ssidName = profile_data["ssid_name"]
@@ -53,6 +53,10 @@ class TestNatMode(object):
print ("SSID_NAME: " + ssidName)
print ("SSID_PASS: " + ssidPassword)
if ssidName not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
report = setup_perfectoMobile_android[1]
driver = setup_perfectoMobile_android[0]
connData = get_APToMobileDevice_data
@@ -68,7 +72,7 @@ class TestNatMode(object):
@pytest.mark.twog
@pytest.mark.wpa2_personal
def test_ClientConnectivity_2g_WPA2_Personal(self, request, get_APToMobileDevice_data, setup_perfectoMobile_android):
def test_ClientConnectivity_2g_WPA2_Personal(self, request, get_vif_state, get_APToMobileDevice_data, setup_perfectoMobile_android):
profile_data = setup_params_general["ssid_modes"]["wpa2_personal"][0]
ssidName = profile_data["ssid_name"]
@@ -76,6 +80,10 @@ class TestNatMode(object):
print ("SSID_NAME: " + ssidName)
print ("SSID_PASS: " + ssidPassword)
if ssidName not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
report = setup_perfectoMobile_android[1]
driver = setup_perfectoMobile_android[0]
connData = get_APToMobileDevice_data
@@ -91,7 +99,7 @@ class TestNatMode(object):
@pytest.mark.twog
@pytest.mark.wpa
def test_ClientConnectivity_2g_WPA(self, request, get_APToMobileDevice_data, setup_perfectoMobile_android):
def test_ClientConnectivity_2g_WPA(self, request, get_vif_state, get_APToMobileDevice_data, setup_perfectoMobile_android):
profile_data = setup_params_general["ssid_modes"]["wpa"][0]
ssidName = profile_data["ssid_name"]
@@ -99,6 +107,10 @@ class TestNatMode(object):
print ("SSID_NAME: " + ssidName)
print ("SSID_PASS: " + ssidPassword)
if ssidName not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
report = setup_perfectoMobile_android[1]
driver = setup_perfectoMobile_android[0]
connData = get_APToMobileDevice_data
@@ -114,7 +126,7 @@ class TestNatMode(object):
@pytest.mark.fiveg
@pytest.mark.wpa
def test_ClientConnectivity_5g_WPA(self, request, get_APToMobileDevice_data, setup_perfectoMobile_android):
def test_ClientConnectivity_5g_WPA(self, request, get_vif_state, get_APToMobileDevice_data, setup_perfectoMobile_android):
profile_data = setup_params_general["ssid_modes"]["wpa"][1]
ssidName = profile_data["ssid_name"]
@@ -122,6 +134,10 @@ class TestNatMode(object):
print ("SSID_NAME: " + ssidName)
print ("SSID_PASS: " + ssidPassword)
if ssidName not in get_vif_state:
allure.attach(name="retest,vif state ssid not available:", body=str(get_vif_state))
pytest.xfail("SSID NOT AVAILABLE IN VIF STATE")
report = setup_perfectoMobile_android[1]
driver = setup_perfectoMobile_android[0]
connData = get_APToMobileDevice_data

View File

@@ -141,45 +141,57 @@ def setup_perfectoMobile_iOS(request):
reporting_client.test_start(testCaseName, TestContext([], "Perforce"))
def teardown():
reporting_client.test_stop(TestResultFactory.create_failure("See Allure Report"))
driver.close()
print("\n------------")
print("Driver Closed")
try:
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(request.config.cache.get("SelectingWifiFailed", None)))
request.config.cache.set(key="SelectingWifiFailed", value="Cache Cleared!!")
#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()
driver.quit()
print("Driver Quit")
print("------------")
except Exception as e:
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)
finally:
try:
driver.quit()
except Exception as e:
print(" -- Exception Not Able To Quit --")
print (e)
print(" -- Exception Not Able To Quit --")
print(e)
# try:
# 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(request.config.cache.get("SelectingWifiFailed", None)))
# request.config.cache.set(key="SelectingWifiFailed", value="Cache Cleared!!")
# #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 While Tear Down --")
# reporting_client.test_stop(TestResultFactory.create_failure("Exception"))
# print('Report-Url-Failure: ' + reporting_client.report_url() + '\n')
#
# driver.close()
#
# print (e)
# finally:
# try:
# driver.quit()
# except Exception as e:
# print(" -- Exception Not Able To Quit --")
# print (e)
request.addfinalizer(teardown)

View File

@@ -52,7 +52,7 @@ reportTags=TestTag
# iOS Device Capabilities
#manufacturer-iOS=Apple
model-iOS=iPhone-XR
model-iOS=iPhone-12
bundleId-iOS=com.apple.Preferences
platformName-iOS=iOS
#default iOS settings app