mirror of
https://github.com/copyrighttxt/watrbx-game-engine.git
synced 2026-09-07 13:57:48 +00:00
GEEKING
This commit is contained in:
@@ -0,0 +1,124 @@
|
||||
__author__ = 'yiwen'
|
||||
import unittest
|
||||
import os
|
||||
from random import randint
|
||||
from appium import webdriver
|
||||
from time import sleep
|
||||
import contants
|
||||
import commonutils
|
||||
import time
|
||||
import subprocess as sp
|
||||
|
||||
class IOSTestsBase(unittest.TestCase):
|
||||
APP_VERSION = '0.0'
|
||||
DEVICE_NAME = contants.DEVICE_NAME
|
||||
internal = True
|
||||
APP_SRC = contants.APP_NAME
|
||||
DEVICE_TYPE = 'tablet'
|
||||
TESTER = ''
|
||||
|
||||
def setUp(self):
|
||||
# set up appium
|
||||
sleep(2)
|
||||
# sp.call('ios-deploy -i '+ self.DEVICE_NAME+' -b '+self.APP_SRC + ' -r', shell=True)
|
||||
# sleep(2)
|
||||
|
||||
self.driver = webdriver.Remote(
|
||||
command_executor=contants.COMMAND_SERVER,
|
||||
desired_capabilities={
|
||||
'app': self.APP_SRC,
|
||||
'platformName': contants.PLATFORM,
|
||||
'platformVersion': contants.PLATFORM_VERSION,
|
||||
'deviceName': self.DEVICE_NAME,
|
||||
'autoAcceptAlerts': True,
|
||||
})
|
||||
sleep(2)
|
||||
|
||||
def tearDown(self):
|
||||
self.driver.quit()
|
||||
|
||||
def selectwheel(self,value):
|
||||
if self.internal:
|
||||
if self.DEVICE_TYPE == 'phone':
|
||||
value = value.replace('www','m')
|
||||
sleep(3)
|
||||
wheel = self.driver.find_elements_by_class_name('UIAPickerWheel')
|
||||
wheel[0].send_keys(value)
|
||||
|
||||
def login(self,username,password):
|
||||
buttons = self.driver.find_elements_by_class_name('UIAButton')
|
||||
for button in buttons:
|
||||
if button.get_attribute('name') == 'Login':
|
||||
button.click()
|
||||
# clear username first
|
||||
self.driver.find_elements_by_class_name('UIATextField')[0].clear()
|
||||
self.driver.find_elements_by_class_name('UIATextField')[0].send_keys(username)
|
||||
self.driver.find_elements_by_class_name('UIASecureTextField')[0].send_keys(password)
|
||||
if self.DEVICE_TYPE == 'phone':
|
||||
buttons = self.driver.find_elements_by_class_name('UIAButton')
|
||||
for button in buttons:
|
||||
if button.get_attribute('name') == 'Log in':
|
||||
button.click()
|
||||
else:
|
||||
self.driver.find_elements_by_accessibility_id('Log in')[0].click()
|
||||
time.sleep(3)
|
||||
|
||||
def emailscreenshot(self,full_filename,send_to,testtitle):
|
||||
self.driver.save_screenshot(full_filename)
|
||||
time.sleep(3)
|
||||
commonutils.send_mail(send_from='ywen@watrbx.wtf',send_to=send_to,subject=testtitle+' result',text='automation test screen shot for '+testtitle,attfile=full_filename)
|
||||
|
||||
def verifyWebViewStaticText(self,textToVerify,source='webriver'):
|
||||
|
||||
if source == 'ios':
|
||||
# statictext = self.driver.find_elements_by_ios_uiautomation(".scrollViews()[0].webViews()[0].staticTexts()['"+textToVerify+"']")
|
||||
|
||||
statictext = self.driver.find_elements_by_xpath('//UIAApplication[1]/UIAWindow[1]/UIAScrollView[1]/UIAWebView[1]/UIAStaticText')
|
||||
else:
|
||||
statictext = self.driver.find_elements_by_class_name('UIAStaticText')
|
||||
for text in statictext:
|
||||
if text.get_attribute('name') == textToVerify:
|
||||
return True
|
||||
return False
|
||||
|
||||
|
||||
def verifyCookieConstrains(self,keys='rewards'):
|
||||
temp = []
|
||||
if self.verifyWebViewStaticText(textToVerify='The site is currently offline for maintenance and upgrades.'):
|
||||
self.driver.find_elements_by_class_name('UIASecureTextField')[0].send_keys(keys)
|
||||
buttons = self.driver.find_elements_by_class_name('UIAButton')
|
||||
for button in buttons:
|
||||
if button.get_attribute('name') == 'O':
|
||||
temp.append(button)
|
||||
temp[1].click()
|
||||
time.sleep(10)
|
||||
|
||||
|
||||
|
||||
def verifyKeyboard(self):
|
||||
return self.driver.execute_script('target.frontMostApp().keyboard().isValid()')
|
||||
|
||||
def verifyWebLink(self,linktext,source='webriver'):
|
||||
|
||||
if source == 'ios':
|
||||
# statictext = self.driver.find_elements_by_ios_uiautomation(".scrollViews()[0].webViews()[0].staticTexts()['"+textToVerify+"']")
|
||||
|
||||
links = self.driver.find_elements_by_xpath('//UIAApplication[1]/UIAWindow[1]/UIAScrollView[1]/UIAWebView[1]/UIAStaticText')
|
||||
else:
|
||||
links = self.driver.find_elements_by_class_name('UIALink')
|
||||
for link in links:
|
||||
if link.get_attribute('name') == linktext:
|
||||
return link
|
||||
return None
|
||||
|
||||
def launch_game(self):
|
||||
playlink = self.verifyWebLink(linktext='Play')
|
||||
# self.assertTrue(playlink is None,'Did not found Play link on Test Place #1 ')
|
||||
if playlink:
|
||||
playlink.click()
|
||||
# wait till game gets loaded
|
||||
sleep(10)
|
||||
# self.driver.execute_script('target.frontMostApp().mainWindow().images()[0].images()[0].tapWithOptions({tapOffset:{x:0.09, y:0.03}});')
|
||||
# self.assertTrue(self.verifyKeyboard() == True ,'keyboard did not launch , game was not launched')
|
||||
return
|
||||
assert False ,"can't found the Play link on page"
|
||||
Reference in New Issue
Block a user