手把手教你appium 第乙個示例日誌解讀

2021-06-21 11:53:23 字數 2057 閱讀 3350

1. 啟動乙個http伺服器:127.0.0.1:4723

2. 根據測試**setup()進行初始化,在http伺服器上建立乙個session物件;

3. 開始呼叫adb,找到連線上的裝置,設定裝置id

4. 等待裝置準備好響應命令

c1: adb.exe -s emulator-5554 wait-for-device

c2: adb.exe -s emulator-5554 shell "echo 'ready'"

5.開啟logcat日誌監控

這條命令讀取apk檔案,生成了對一些apk基本資訊的json描述,以我的為例:

"menu_settings" : "settings",

"title_activity_main" : "mainactivity",

"rbtnimsi" : "漢字一",

"rtxtimsi" : "imsi_imei"

將生成的apk屬性資訊檔案strings.json存到了裝置目錄下:

c3:adb.exe -s emulator-5554 push "c:\\windows\\temp\\com.example.aimsi\\strings.json" /data/local/tmp

6.讀取這個apk安裝情況

c4:adb.exe -s emulator-5554 shell "pm list packages -3 com.example.aimsi"

讀出來的結果是,我之前已經安裝過這個apk

9.哇k,又安裝了乙個unlock_apk-debug.apk上去

這個apk是用來解鎖螢幕的?還是解鎖apk,使其可除錯?我猜是後者吧,回頭執行測試程式的時候,看看手機上有沒有這個apk就知道了。

10.kill掉所有的uiautomator程序

c8:adb.exe -s emulator-5554 shell "ps|grep 'uiautomator'"

我的模擬器上沒有啟動這個程序

11.執行bootstrap

上帝原諒我,沒管大小寫。後面緊跟著的就是uiautomator的輸出

12.bootstrap開始工作了

載入json,喚醒客戶端

13. 把所有裝置上的執行視窗都輸出到日誌檔案,判斷了一下裝置是已經解鎖的,繼續

c10:adb.exe -s emulator-5554 shell "dumpsys window"

14.啟動被測試程式

c11:adb.exe -s emulator-5554 shell "am start -s -n com.example.aimsi/.mainactivity"

15.等待被測程式獲得焦點,此處超時是60s,模擬器太慢了,居然讀了兩次視窗才啟動成功

後面的這些內容就沒啥好看的了,無非就是一步步呼叫。

有人說為啥研究這些東西這麼仔細,做技術,尤其是測試技術,原則是學多用少,搞明白底細,遇到問題的時候處理起來就快很多。

好吧,就寫到這裡。

手把手教你製作乙個Windows服務

也許你認為開發windows服務是件非常困難的事件,需要了解非常多的作業系統原理以及精通windows的各種api。其實沒有這麼誇張,windows服務就像乙個框架一樣,至於你往裡面加些什麼完全在與你自己。好吧,現在我們就往裡面加 helloworld 吧。開學習製作windows服務之前我們先大概...

手把手教你寫乙個ORM(二)

昨夜一夜未睡,本來以為下班回家能倒下就打呼嚕的,結果吃了晚飯後反而清醒起來了,於是決定把本打算明天寫的部分提前。半夜三更不睡覺幹嘛?出來假扮王祖賢阿 根據前面的需求,我們發現需要將配置檔案抽象出乙個元件出來,快取需要乙個單獨的元件,為了適應不同的資料庫需要做成乙個外掛程式架構的,為不同資料庫插入不同...

手把手教你寫個ORM(一)

這是手把手系列的第一篇,希望能夠開門紅,高手們可以離開了,菜鳥們請繼續 這裡準備把乙個類似ibaties的半自動orm的設計和實現過程一步步地剖析出來,供菜鳥參考,功能很簡單,甚至我只能用簡陋來形容了,不過把一些關鍵點破後,希望後浪們不用再花功夫摸索了。為什麼我們要重 明輪子?因為不親自經歷一遍發明...