appium常用的api

滑動屏幕

driver.scroll(element1,element2)

dot_0 = driver.find_element_by_id(“dot_0”)
dot_2 = driver.find_element_by_id(“dot_2”)
driver.scroll(dot_2,dot_0)

獲取當前活動的activity

driver.current_activity

將app置於後臺運行10秒,再顯示界面,同時主程序停止,類似於sleep

driver.background_app(10)

判斷app是否已安裝,參數爲包名

driver.is_app_installed(“com.talk51.dasheng”)

#關閉app 和driver.quit() 區別在於,close_app() 是針對於app的關閉操作,不會釋放服務的的session_id,quit()是針對實例操作,會釋放session_id

driver.close_app()

卸載app,參數爲包名

driver.remove_app(“com.talk51.dasheng”)

等待一activity

#重置應用數據,有些場景我們需要清除應用數據,相當於第一次安裝時候的狀態,比如,第一次啓動App時的引導頁,登錄等等
driver.reset()

開啓某個activity,實現跳轉

driver.start_activity(“com.lemon.lemonban”,“com.lemon.lemonban.activity.MainActivity”)

安裝app

driver.install_app(“lemonban_release.apk”)

tap

tap和click比較:對於只有一個finger操作和click行爲相同,如果超過一隻finger那就不同。
並且tap可以模擬雙擊事件,click點擊的時候是點擊控件的中心點座標:

//positions:點擊的座標。多個手指則將多個座標儲存在列表中。
//duration:點擊的時間間隔
driver.tap([(100,200),(100,60),(100,100)],500)

pressKeyCode()

Android特有,appium擴展了pressKeyCode方法,使得可以通過腳本發送這些事件:

//按下電源鍵事件
driver.pressKeyCode(26)
1
2
其中26是電源鍵的鍵值。
詳細的按鍵信息地址:
http://developer.android.com/reference/android/view/KeyEvent.html

Get_screenshot_as_file()

如測試用例執行失敗,我們可能需要截圖保存在測試報告中,通過此方法就可以獲取到運行失敗時的錯誤截圖:

//截圖
Driver.get_screenshot_as_file(“D:\image.png”)

background_app

將當前的應用切換到後臺,然後可以讓其在指定時間內回到前臺,或者讓它一直留在後臺。
傳遞給這個方法的參數有兩種類型:
一個整型(秒):表示後臺狀態維持多久。-1表示持續置於後臺。
一個看起來像{“timeout”:secs}的對象。裏面的secs是含義和第一個類型一樣的整型數字(即表示置於後臺持續多少秒),或者爲null(表示持續置於後臺)。
示例:

driver.background_app(5) #置於後臺,持續5s
driver.background_app(-1) #持續置於後臺
driver.background_app({“timeout”:None) #持續置於後臺

九宮格滑動解鎖操作實踐

TouchAction類:
將一系列的動作放在一個鏈條中,然後將該鏈條傳遞給服務器,服務器接收到該鏈條後,解析哥各個動作,逐個執行。

press 按壓
longpress 長按
tap 點擊
move_to 移動
wait 等待
release 鬆開(按壓之後鬆開)
perform 執行前面鏈條的操作
cancel 取消前面鏈條的所有操作

還有相關api連接
https://blog.csdn.net/weixin_30700099/article/details/97656890?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章