基於 Autojs 的 APP、小程序自動化測試 SDK

autojs sdk

基於 Autojs 的 APP、小程序自動化測試 SDK,支持:啓動應用、停留等待、判斷存在、文本點擊、顏色點擊、循環點擊、座標拾取、語音播報、通知欄提示、音量調節、震動等數十項能力。javascript

項目主頁

https://github.com/kangour/autojs_sdkhtml

autojs sdk 在 Auto.js 的基礎上,經過大量接口優化提高了模塊的通用性,並進行豐富的功能擴展。java

能幹啥

使用 autojs sdk,一行代碼就能完成 語音播報/任意類型文本點擊/循環點擊/座標拾取/自動權限控制/自動類型識別/自動按鍵監聽/通知欄實時提示/自動移除最近任務/自動解鎖 等數十項能力,更多能力陸續開放中。git

開放的方法

包括但不限於如下方法,更多功能盡情期待:github

start_app: 傳入應用名稱,啓動應用。 wait_for: 等待文本出現 has_text: 當前屏幕是否存在文本 click: 點擊文本或座標 click_item: 點擊文本 click_color: 點擊顏色 click_item_each: 點擊當前屏幕的全部傳入文本 click_color_each: 點擊當前屏幕的全部傳入顏色 wait_befor_click: 某文本出現以前的點擊 get_coord_by_color: 經過顏色獲取座標 get_coord_by_text: 獲取文本座標 set_volume: 設置設備音量 log/warn/error: 設置調試日誌 

簡單上手

編寫基於本 sdk 的應用分爲三個步驟小程序

  1. 將 autojs_sdk/lib.js 導入運行環境
  2. 在新建立的應用中用 require('lib') 引入 auto_sdk
  3. 編寫主函數 main() 並傳入 lib.start_app()

這裏展現僅用 5 行代碼開發一個基於網易雲音樂的自動播放測試應用,實現的功能有 啓動網易雲音樂後的 跳過開屏廣告/播放每日推薦歌曲/調節音量app

// 導入:從 lib.js 導入須要的方法 let { start_app, click_item, set_volume, wait_befor_click } = require('lib.js'); // 編寫主函數:程序啓動後執行的邏輯代碼。 function main() { wait_befor_click('發現', '跳過') click_item('發現') click_item('每日推薦') click_item('播放所有') set_volume(30) } // 啓動應用:傳入參數依次爲:主函數,要啓動的 App 名稱,當前應用描述,是否語音播報執行狀態。 start_app(main, '網易雲音樂', '播放日推', true)

高頻函數介紹

入口函數函數

start_app(callback, op_app, this_app, use_tts) 

程序入口函數,自動完成解鎖、啓動 App、權限控制、按鍵監聽、通知欄提示等操做。工具

  • callback:軟件啓動後執行的函數,如 main
  • operation_app:須要啓動的軟件,如 網易雲音樂
  • this_app:當前程序的描述,如 播放每日推薦
  • use_tts:執行完畢後是否使用語音提示(默認不啓用)

文本點擊測試

click_item(_text, tip_type) 

自動識別文本類型,並點擊文本。

  • _text: 待點擊的文本
  • tip_type:提示類型,若是傳入 no_tip,則不會在文字尋找失敗後給出提示彈窗(默認啓用)

顏色點擊

click_color(_color, x, y, w, h) 

在指定的區域點擊傳入的顏色

  • _color:待點擊的顏色
  • x:區域左上角的 x 座標
  • y:區域左上角的 y 座標
  • w:區域寬度
  • h:區域高度

等待前點擊

wait_befor_click(target, source) 

在 target 出現前,若是出現 source,就點擊。

例如進入有開屏廣告的應用前,點擊 「跳過廣告」 文本,有效節約啓動時間:

wait_befor_click('首頁', '跳過') 

開發者的話

還有不少函數等待你去發掘,好比日期時間處理,日誌,座標處理等能力,都可參考 autojs_sdk/lib.js 的函數註釋,同時也但願你能和我一塊兒來完善它,一塊兒構建一個易用的自動化測試工具;你能夠將本身基於 autojs_sdk 編寫的應用提交到 example 目錄下。

項目交流羣

autojs_sdk 羣:984025847

原文出處:https://www.cnblogs.com/kailang/p/11294656.html

相關文章
相關標籤/搜索