python–appium實現多點觸控,多點操作
背景:測試同事要我幫忙驗證一個概率性問題,三指截屏不會被保存,於是有了以下測試腳本
思路:需要三個下滑動作同時進行
#此腳本實現三指下滑截屏
import time
from appium import webdriver
from appium.webdriver.common.touch_action import TouchAction
from appium.webdriver.common.multi_action import MultiAction
desired_caps = {}
desired_caps['platformName'] = 'Android' #平臺名稱
desired_caps['deviceName'] = "aa" #設備名稱
desired_caps['platformVersion'] = "9" #平臺版本
desired_caps['appPackage'] = "com.google.android.apps.messaging" #包名
desired_caps['appActivity'] = "com.google.android.apps.messaging.ui.ConversationListActivity" #包入口
desired_caps['noReset'] = 'true'
driver = webdriver .Remote('http://localhost:4723/wd/hub', desired_caps) #啓動服務/通過4723端口來建立一個會話
def scr():
action1 = TouchAction(driver) #第一個手勢
action2 = TouchAction(driver) #第二個手勢
action3 = TouchAction(driver) #第三個手勢
zoom_action = MultiAction(driver)
action1.press(x = 300, y = 600).move_to(x = 300, y = 750).wait(200).release()
action2.press(x = 400, y = 600).move_to(x = 400, y = 750).wait(200).release()
action3.press(x = 500, y = 600).move_to(x = 500, y = 750).wait(200).release()
zoom_action.add(action1,action2,action3) #加載
time.sleep(2)
print("第%s次截圖"%(i))
zoom_action.perform() #執行
if __name__ == '__main__':
for i in range(100): #執行100次
scr()