1.去登录考研帮系统
import time
from time import sleep
from appium import webdriver
info = {
'platformName':'Android',
'platformVersion':'7.1.2',
'deviceName':'127.0.0.1:62001',
'appPackage':'com.tal.kaoyan',
'appActivity':'com.tal.kaoyan.ui.activity.SplashActivity',
'noReset':False
}
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub',info)
driver.implicitly_wait(3)
driver.find_element('id','android:id/button2').click()
x = driver.get_window_size()['width']
y = driver.get_window_size()['height']
print('手机宽度{},手机高度{}'.format(x,y))
time.sleep(1)
driver.swipe(x*0.9,y*0.8,x*0.1,y*0.8,1000)
time.sleep(1)
driver.swipe(x*0.9,y*0.8,x*0.1,y*0.8,1000)
time.sleep(1)
driver.find_element('id','com.tal.kaoyan:id/activity_splash_guidfinish').click()
driver.find_element('id','com.tal.kaoyan:id/login_email_edittext').send_keys('qwerty2664')
driver.find_element('id','com.tal.kaoyan:id/login_password_edittext').send_keys('qwerty123')
driver.find_element('id','com.tal.kaoyan:id/login_login_btn').click()
time.sleep(3)
driver.quit()
2.高级手势操作
"""
高级手势 TouchAction 滑动长按 拖动 主要解决如滑屏解锁
使用的步骤
1.有基本手势组成,所以我们就要组合创建touchAction对象
2.通过对象去调用操作
3.执行一定要perform
"""
import time
from time import sleep
from appium import webdriver
from appium.webdriver.common.touch_action import TouchAction
info = {
'platformName':'Android',
'platformVersion':'7.1.2',
'deviceName':'127.0.0.1:62001',
'appPackage':'com.android.settings',
'appActivity':'com.android.settings.ChooseLockPattern',
'noReset':False
}
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub',info)
driver.implicitly_wait(3)
1.tap()
2.移动 move_to
3.滑屏操作
TouchAction(driver).press(x=857.2,y=898.5).wait(1000).move_to(x=540.5,y=1229.4).wait(1000).move_to(x=211.8,y=1599.1).wait(1000).release().perform()
time.sleep(3)
driver.quit()
3.多点触控 multiAction
import time
from time import sleep
from appium import webdriver
from appium.webdriver.common.multi_action import MultiAction
from appium.webdriver.common.touch_action import TouchAction
info = {
'platformName':'Android',
'platformVersion':'7.1.2',
'deviceName':'127.0.0.1:62001',
'appPackage':'com.baidu.BaiduMap',
'appActivity':'com.baidu.baidumaps.MapsActivity',
'noReset':True
}
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub',info)
driver.implicitly_wait(3)
action1 = TouchAction(driver)
action1.press(x=552.5,y=446.7).wait(1000).move_to(x=851.2,y=1183.4).wait(1000).release()
action2 = TouchAction(driver)
action2.press(x=337.7,y=1033.5).wait(1000).move_to(x=835.2,y=1114.4).wait(1000).release()
zoom = MultiAction(driver)
zoom.add(action1,action2)
zoom.perform()
time.sleep(3)
driver.quit()
4.原生嵌套H5
import time
from time import sleep
from appium import webdriver
from appium.webdriver.common.multi_action import MultiAction
from appium.webdriver.common.touch_action import TouchAction
info = {
'platformName':'Android',
'platformVersion':'7.1.2',
'deviceName':'127.0.0.1:62001',
'appPackage':'com.wondershare.drfone',
'appActivity':'.ui.activity.WelcomeActivity',
'noReset':True
}
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub',info)
driver.implicitly_wait(3)
driver.find_element('id','com.wondershare.drfone:id/btnBackup').click()
time.sleep(12)
driver.find_element('id','com.wondershare.drfone:id/btnRecoverData').click()
time.sleep(5)
context = driver.contexts
print(context)
time.sleep(3)
driver.switch_to.context('嵌套句柄值填写到这即可')
print('我切换到H5了')
driver.find_element('id','xxxx').send_keys('123')
driver.switch_to.context('原生句柄值')
print('我又跳回来了')
time.sleep(3)
driver.quit()