Appium啓動apkandroid
desired_caps = {}web
#使用平臺app
desired_caps['platformName'] = 'Android'code
#平臺版本號orm
desired_caps['platformVersion'] = '5.1'ip
#使用 adb deviceselement
desired_caps['deviceName'] = '192.168.88.101:5555'unicode
#將aapt配置到環境變量,cmd:aapt dump badging ‘apk包名’#過濾 |findstr 「package」get
desired_caps['appPackage'] = 'com.youdao.note'cmd
#將aapt配置到環境變量,cmd:aapt dump badging ‘apk包名’#過濾 |findstr 「activity'」
例如」aapt dump badging youdaonote_android_6.2.3_youdaoweb.apk |findstr activity」
desired_caps['appActivity'] = 'com.youdao.note.activity2.SplashActivity'
#爲了能夠輸入中文
desired_caps['unicodeKeyboard'] = True
desired_caps['resetKeyboard'] = True
self.driver=webdriver.Remote('http://localhost:4723/wd/hub',desired_caps)
appium模擬手機長按
from appium.webdriver.common.touch_action import TouchAction
#定位元素並實例化
ele_first_note=(By.XPATH, "//android.widget.ListView[@resource-id='android:id/list']/android.widget.RelativeLayout[1]" )
#定位須要長按的元素
ele_first_note = self.wait_element(*ele_first_note)
#點擊元素進行長按
TouchAction(self.driver).long_press(ele_first_note).perform()
Appium模擬手機上下滑動
# 屏幕向上滑動
#得到機器屏幕大小x,y
def getSize():
x = dr.get_window_size()['width']
y = dr.get_window_size()['height']
return (x, y)
def swipeUp(self,t,num = 1): # t爲滑動時間 num爲滑動次數
i = 0
while i<=num:
# 經過getSize()獲取屏幕的分辨率x,y
l = self.getSize()
# 如今l=[x,y]也就是寬和高
x1 = int(l[0] * 0.5) #就是寬的一半
y1 = int(l[1] * 0.75) #就是高,屏幕下面三分之一處
y2 = int(l[1] * 0.5) #就是高,屏幕高的中間
self.driver.swipe(x1, y1, x1, y2,t)#假設x,y=800,1000
x1=400,y1=750滑動到x1=400,y2=500
i+=1
#上下滑動控制Y,左右滑動控制X,num默認參數爲1次