二維碼
        企資網(wǎng)

        掃一掃關(guān)注

        當(dāng)前位置: 首頁 » 企業(yè)資訊 » 經(jīng)驗(yàn) » 正文

        Monkey基礎(chǔ)使用教程

        放大字體  縮小字體 發(fā)布日期:2021-09-22 09:21:49    作者:小編:張凱    瀏覽次數(shù):61
        導(dǎo)讀

        一、.Monkey測(cè)試概念Monkey是Android中的一個(gè)命令行工具,可以用過adb shell模擬用戶行為,運(yùn)行在模擬器里或?qū)嶋H設(shè)備中。它向系統(tǒng)發(fā)送偽隨機(jī)的用戶事件流(如按鍵輸入、觸摸屏輸入、手勢(shì)輸入等),實(shí)現(xiàn)對(duì)正在開發(fā)的應(yīng)

        一、.Monkey測(cè)試概念

        Monkey是Android中的一個(gè)命令行工具,可以用過adb shell模擬用戶行為,運(yùn)行在模擬器里或?qū)嶋H設(shè)備中。它向系統(tǒng)發(fā)送偽隨機(jī)的用戶事件流(如按鍵輸入、觸摸屏輸入、手勢(shì)輸入等),實(shí)現(xiàn)對(duì)正在開發(fā)的應(yīng)用程序進(jìn)行壓力測(cè)試。Monkey測(cè)試是一種為了測(cè)試軟件的穩(wěn)定性、健壯性的快速有效的方法。

        二、Monkey工作原理

        測(cè)試原理:利用socket通訊的方式來模擬用戶按鍵輸入、觸摸屏輸入、手勢(shì)輸入等。

        三、基礎(chǔ)命令與示例

        1.adb devices:查看當(dāng)前連接的設(shè)備,連接到計(jì)算機(jī)的Android設(shè)備或者模擬器;

        2.adb install:指定APK文件安裝到設(shè)備 ;

        3.卸載軟件

        adb uninstall (軟件包名):指定包名卸載軟件;

        adb uninstall -k (包名):+k參數(shù),卸載軟件但保留配置和緩存文件;

        4.使用Monkey命令進(jìn)行隨機(jī)測(cè)試

        1)adb shell monkey -p(package)包名 number(次數(shù)) :指定文件包隨機(jī)次數(shù)(若不指定包名,monkey將允許系統(tǒng)啟動(dòng)設(shè)備中的所有app);

        2)指定多個(gè)包進(jìn)行隨機(jī)測(cè)試

        adb shell monkey -p 包名 -p 包名

        5.日志級(jí)別

        1)Level0:缺省值,僅提供啟動(dòng)提示、測(cè)試完成和蕞終結(jié)果等少量信息。

        示例:adb shell monkey -p com.storedisplay.client -v 100

        2)Level1:提供較為詳細(xì)的日志,包括每個(gè)發(fā)送到Activity的事件信息。

        示例:adb shell monkey -p com.storedisplay.client -v -v 100

        3)Level2:蕞詳細(xì)的日志,包括了測(cè)試中選中/未選中的Activity。

        示例:adb shell monkey -p com.storedisplay.client -v -v -v 100

        6.Monkey其他命令參數(shù)

        1)參數(shù):-s

        釋義:用于指定偽隨機(jī)數(shù)生成器的seed值,如果seed相同,則兩次Monkey測(cè)試所產(chǎn)生的時(shí)間序列也相同。

        示例:adb shell monkey -p com.storedisplay.client-s 10 100

        2)參數(shù):–throttle(毫秒)

        s釋義:用于指定用戶操作(事件)間的時(shí)延,單位是毫秒。

        示例:adb shell monkey -p com.storedisplay.client --throttle 300 100

        3)參數(shù):–ignore-crashes

        釋義:用于指定當(dāng)前應(yīng)用程序崩潰時(shí)(Force&Close錯(cuò)誤),Monkey是否停止運(yùn)行。若使用該參數(shù),即使應(yīng)用程序崩潰,Monkey依然發(fā)送事件,直到發(fā)送事件結(jié)束完成。

        示例:adb shell monkey -p com.storedisplay.client --ignore-crashes 1000

        4)參數(shù):–ignore-timeouts(無響應(yīng)ANR)

        釋義:用于指定當(dāng)前應(yīng)用程序發(fā)送ANR錯(cuò)誤時(shí),Monkey是否停止運(yùn)行。若使用此參數(shù),即使應(yīng)用程序發(fā)送ANR錯(cuò)誤,Monkey依然會(huì)發(fā)送事件,直至事件完成。

        示例:adb shell monkey -p com.storedisplay.client --ignore-tomeouts 1000

        5)參數(shù):–ignore-security-exceptions(許可證書崩潰)

        釋義:用于指定當(dāng)前應(yīng)用程序發(fā)生錯(cuò)誤時(shí)(如證書許可、網(wǎng)絡(luò)許可等),Monkey是否停止運(yùn)行。如果使用此參數(shù),即使應(yīng)用程序發(fā)生許可錯(cuò)誤,Monkey依然會(huì)發(fā)送事件直至事件完成。

        示例:adb shell monkey -p com.storedisplay.client --ignore-security-exceptions 1000

        6)參數(shù):–kill-process-after-error(發(fā)生錯(cuò)誤停止并保持當(dāng)前狀態(tài))

        釋義:用于指定當(dāng)前應(yīng)用程序發(fā)送錯(cuò)誤時(shí),是否停止其運(yùn)行。如果指定此參數(shù),當(dāng)應(yīng)用程序發(fā)生錯(cuò)誤時(shí),應(yīng)用程序停止并保持在當(dāng)前狀態(tài)(注意:系統(tǒng)并不會(huì)結(jié)束該應(yīng)用程序的進(jìn)程)。

        示例:adb shell monkey -p com.storedisplay.client --kill-process-after-error 1000

        7)參數(shù):–monitor-native-crashes(監(jiān)視并報(bào)告Android系統(tǒng)本地代碼的崩潰事件)

        示例:adb shell monkey -p com.storedisplay.client --monitor-native-crashes 1000

         
        (文/小編:張凱)
        免責(zé)聲明
        本文僅代表作發(fā)布者:小編:張凱個(gè)人觀點(diǎn),本站未對(duì)其內(nèi)容進(jìn)行核實(shí),請(qǐng)讀者僅做參考,如若文中涉及有違公德、觸犯法律的內(nèi)容,一經(jīng)發(fā)現(xiàn),立即刪除,需自行承擔(dān)相應(yīng)責(zé)任。涉及到版權(quán)或其他問題,請(qǐng)及時(shí)聯(lián)系我們刪除處理郵件:weilaitui@qq.com。