Appium移動自動化測試(二)之appuim + 夜神模擬器


環境搭建起來之后, 就可以開始移動自動化了. 但是使用自帶的AVD開啟模擬器, 速度實在太慢. 於是用夜神來做替代, 稍微能夠有一些提速.

  1. 啟動appuim

    打開Appium,點擊右上角Start按鈕

    

    輸出如下信息, 表示啟動成功

    

      可以提前獲取如下信息:

        主機: 127.0.0.1:4723

        desired_caps['platformName'] = 'Android'

      desired_caps['platformVersion'] = '23'
      desired_caps['deviceName'] = 'Android Emulator'

    2. 鏈接夜神模擬器

      1). 首先啟動夜神模擬器

      2)  進入安裝目錄, 鏈接模擬器

        

      注意: 

      如果夜神模擬器的adb版本和androidsdk的adb版本不一致,需將androidsdk中platform-tools目錄下的adb.exe拷貝到模擬器的bin目錄,並修改為nox_adb.exe

 

    3.  獲取package

      在sdk/tools下面有個uiautomatorviewer.bat工具

      

      啟動以后的樣子

      

      左上角一共四個按鈕,作用分別是打開本地文件、dump頁面、dump壓縮格式的頁面、保存

      選擇第三個按鈕的dump模式,右側展示的是樹的形式,看上去簡介了很多,方便元素的查找和查看。

      

      除此之外頁面右側還有列表的樹形結構,點擊任意控件可在右下方顯示控件的詳細信息,樹形結構還支持搜索功能,不過搜索的是content-desc的內容。

     4.  獲取apk的activity

      在apk/tools目錄下有個工具hierarchyview.bat, 它可以獲取設備當前頁面的package和activity信息

      

      其中,“com.Qunar”是對應的package,“com.mqunar.atom.hotel.ui.activity.HotelListActivity”是當前頁面的activity

 

      備用方案一:

      hierarchy view經常連不上真機或者模擬器,無法獲得activity,所以直接用 adb命令來查看當前運行的 activity

      1、cmd命令中輸入:adb shell 進入shell命令模式
      2、shell中輸入:logcat | grep ActivityManager   真機運行應用,可以實時 查看當前正在運行的Activity;

      I/ActivityManager(  511): START u0 {act=Android.intent.action.INSERT dat=content
      ://com.example.notepad.provider.NotePad/notes cmp=com.example.android.notepad/.N
      oteEditor} from pid 12896
      cmp=com.example.android.notepad/.NoteEditor 中, 
      com.example.android.notepad 是包名, NoteEditor是當前活動的activity;

   

      備用方案二:

     在sdk\builds-tools\目錄下, aapt是sdk自帶的一個工具,命令行切換至該目錄下, 運行aapt dump badging ***.apk, 在結果中可以找到package和activity的名字

      

 

desired_caps['platformName'] = 'Android'
desired_caps['platformVersion'] = '23'
desired_caps['deviceName'] = 'Android Emulator'


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM