Appium啟動apk
desired_caps = {}
#使用平臺
desired_caps[`platformName`] = `Android`
#平臺版本號
desired_caps[`platformVersion`] = `5.1`
#使用 adb devices
desired_caps[`deviceName`] = `192.168.88.101:5555`
#將aapt配置到環境變數,cmd:aapt dump badging ‘apk包名’#過濾 |findstr “package”
desired_caps[`appPackage`] = `com.youdao.note`
#將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次