Monkey面試題整理


1. 查找進程命令是什么?

adb shell ps

adb shell ps |findstr 名稱

2. 如何獲取包名

1)獲取手機上的所有包名信息。

     adb shell pm list packages

2) 獲取手機上包含xxx信息的包名

   adb shell pm list packages |findstr xxx

3) 在不知道包名的前提下獲取包名,先打開需要查找的APK后,敲入一下命令

   adb shell dumpsys windows w | findstr name=

4)對獲取到的包名執行隨機點擊事件

   adb shell monkey -p com.android.bbkcalculator 3000 >e:\123.txt (先在E盤創建個123.txt文件,本句話的意思是:當對此com.android.bbkcalculator包執行操作3000次時,將日志記錄到指定的E盤123.txt文件中)

3. Monkey如何模擬手動操作? 
答:--throttle參數

語法:adb shell  monkey -p 包名  --throttle 1000 1000

eg:   adb shell monkey -p com.android.bbkcalculator --throttle 1000 1000

 注意:前面一個1000是毫秒數,后面一個1000是執行次數,意思是對指定的APK 執行1000次  ,每次延時1秒,進行隨機操作。

4. 殺死進程的方法 (force-stop 和clear)

1) 根據包名殺死進程的命令。(此命令只是將程序停止工作)

     adb shell am force-stop 【包名】

注意:這種方法會強制停止APP進程,不會清除APP進程在系統中產生的數據

2)  殺死后台進程的命令

    adb shell pm clear 【包名】

    執行完成以后打開手機確定一下

注意:區別於上面殺死進程的命令,這個會將后台程序殺死。

5. 如何重現Monkey中發現的錯誤? 
答:使用seed

語法:adb shell monkey -p 包名 -s 50 100

eg: adb shell monkey -p  com.android.bbkcalculator -s 50 100

注意:seed值 可以簡單形象的理解為flag,建立一個標簽。一般用於monkey跑命令中。我第一次設定這個seed 值等於100,去跑monkey命令,就會對指定的APP程序隨機點擊100次,跑隨機事件;

第二次我跑命令的時候,還是用這個seed值,那么就會跟一次跑隨機事件會一模一樣,是個偽隨機事件。 Monkey測試1:adb shell monkey -p com.android.bbkcalculator  –s 50 100

Monkey 測試2:adb shell monkey -p com.android.bbkcalculator  –s 50 100 也就是說着兩個命令執行的事件順序是一模一樣的! -s 代表 seed,50由自己隨意定義

6. Monkey如何控制事件流所占比? 

答:--pct-touch等pct參數

語法:  adb shell monkey -p 包名 --pct-touch 100 10

eg:  adb shell monkey -p com.android.bbkcalculator --pct-touch 100 10

7. Monkey除了做偽隨機事件外,能不能寫腳本? 
答:能。

8、如果能寫腳本怎么做? 
答:兩種方式,指定事件類型+事件百分比,或者使用 -f參數加腳本文件。

9、Monkey測試一般測試多久? 
答:超過3個小時。

10. android monkey的測試結果怎么分析

在log的最開始都會顯示Monkey執行的seed值、執行次數和測試的包名。

首先我們需要查看Monkey測試中是否出現了ANR或者異常,無響應問題(ANR問題):在日志中搜索“ANR ”(此處有空格),

崩潰問題:在日志中搜索“Exception”,快速定位到關鍵事件信息 。然后查看Monkey里面出錯前的一些事件動作,並手動執行該動作,找出重現步驟,給開發。

11. monkey測試流程?

答:簡要步驟:
1). 查看設備是否已連接:adb devices

2). 測試前首先關閉MTK log,將sdcard卡和手機內存中的舊的log清理趕緊

3). 了解並得到包名

4). 運行測試穩定性命令: adb shell monkey -p 包名 -v 運行次數(多個參數的組合形成不同的用例以求最大的覆蓋)

5).當崩潰或無響應時分析monkey日志

12. Monkey測試注意事項

注意事項:

  1. 測試關閉所有網絡開關(wifi及數據連接)
  2. 開啟安全設置下的未知來源
  3. 手機連接電源充電
  4. 若有有關於音頻的模塊,請插入耳機避免影響其他同事
  5. 若測試信息模塊時需要安裝測試工具testwizard.apk,自動生成通話記錄,短信(數量為10)
  6. 若測試文件管理器需要在T卡內存放有圖片/音樂/apk/視頻/txt這類文件
  7. 測試圖庫是需要T卡內存放100個圖片及視頻的,同樣音樂和視頻播放器也需要存放不少於50個片源
  8. 測試電子郵件的需要新建兩個以上的賬戶
  9. 測試前運行一遍手機上方帶有的首次提示的說明,如輸入法,文件夾窗口,apk提示語等
  10. 若測試時遇到問題想重新開始測試,必須拔掉電板后重新鍵入adb指令重新開始。

13. 如何將測試報告記錄在本地:

將命令改為:  adb shell monkey –p com.android.bbkcalculator –-throttle 100 –-pct-touch 50 –-pct-motion 50 –v –v 10 >D:\monkeylog.txt

 

其它資料可參考:

Monkey基本使用流程及測試報告分析: https://www.cnblogs.com/persistz/p/6209024.html

Android模擬器端口被占用解決:  https://blog.csdn.net/u014769864/article/details/72649543

monkey實戰--測試步驟、常用參數、常規monkey命令: https://blog.csdn.net/u011649536/article/details/45043781

 

轉自:https://www.cnblogs.com/lanmosonny/p/9168212.html

轉載於:https://www.cnblogs.com/peng96/p/11136789.html


免責聲明!

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



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