<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          互聯(lián)網(wǎng)測(cè)試必須要知道的App穩(wěn)定性測(cè)試

          共 3687字,需瀏覽 8分鐘

           ·

          2020-09-02 08:02

          App穩(wěn)定性測(cè)試

          穩(wěn)定性測(cè)試就是指軟件長(zhǎng)時(shí)間的持續(xù)運(yùn)行,系統(tǒng)版本是否穩(wěn)定,是否能否持續(xù)的為用戶(hù)提供服務(wù)。

          指標(biāo):
            異常的次數(shù)
            異常的頻率

          App的穩(wěn)定性測(cè)試如何實(shí)施?

          首選Monkey

          Monkey是向系統(tǒng)發(fā)送隨機(jī)的用戶(hù)事件流(如按鍵輸入、觸摸屏輸入和手勢(shì)輸入等),實(shí)現(xiàn)對(duì)正在開(kāi)發(fā)的應(yīng)用程序進(jìn)行穩(wěn)定性測(cè)試。可以更好的模擬用戶(hù)操作,確保App的穩(wěn)定性。

          Monkey運(yùn)行流程:

          1、Monkey 程序是由 Android 系統(tǒng)自帶,使用 Java 語(yǔ)言寫(xiě)成,其本身是安卓系統(tǒng)下的一個(gè)monkey.jar文件。在Android文件系統(tǒng)中的存放路徑是:/system/framework/monkey.jar;

          2、Monkey.jar程序是由一個(gè)名為“monkey”的Shell腳本來(lái)啟動(dòng)執(zhí)行,shell腳本在Android文件系統(tǒng)中 的存放路徑是:/system/bin/monkey;
          3、Monkey 啟動(dòng)方式:在 cmd 命令提示符里面輸入命令行來(lái)啟動(dòng) monkey 測(cè)試。

          4、命令行:adb shell monkey——monkey.shell——monkey.jar——安卓進(jìn)程——設(shè)備上執(zhí)行測(cè)試

          Monkey原理圖:

          一、系統(tǒng)環(huán)境準(zhǔn)備:

          Python3.7
          Pycharm社區(qū)版
          SDK 下載網(wǎng)址:
          http://www.androiddevtools.cn/
          雷神模擬器
          58同城apk

          二、SDK環(huán)境搭建:

          1、下載 android-sdk,這個(gè)是做 android 測(cè)試和開(kāi)發(fā)的必備環(huán)境

          2、解壓后,里面有個(gè) SDK manager.exe 雙擊打開(kāi)

          3.勾選你要現(xiàn)在的 API 版本和對(duì)應(yīng)的 android 版本,后面模擬器會(huì)用到,然后坐等下載

          在系統(tǒng)變量新建:ANDROID_HOME,對(duì)應(yīng)變量值:
          E:\android-sdk-windows(sdk 安裝路徑)

          4.path 添加兩個(gè)變量,將以下箭頭所指的兩個(gè)文件路徑添加到 path 里

          path下添加如下兩個(gè)路徑:

          E:\android-sdk-windows\tools 和 E:\android-sdk-windows\platform-tools
          adb環(huán)境

          1.因?yàn)?adb 是在 D:\androidsdk\android-sdk-windows\platform-tools

          這個(gè)目錄下的,所以上面添加了環(huán)境變量后,可以直接在 cmd 里面運(yùn)行了。

          2.在 cmd 輸入 adb 可以查看對(duì)應(yīng)版本號(hào)

          3、連接雷神模擬器—adb connect 127.0.0.1:5555

          首先要打開(kāi)USB調(diào)式選項(xiàng)(默認(rèn)是沒(méi)有開(kāi)啟調(diào)式模式的)

          開(kāi)啟調(diào)式模式操作步驟:依次打開(kāi)設(shè)置–關(guān)于-連擊5次版本號(hào),再返到我設(shè)置主頁(yè)就可以看到開(kāi)發(fā)者選項(xiàng)

          雷電模擬器:adb connect 127.0.0.1:5555

          使用指令:adb devices

          連接信息解釋
          手機(jī)設(shè)備:顯示設(shè)備的序列號(hào),即b2355f8a

          模擬器:顯示ip地址和端口,即127.0.0.1:62001

          device:已識(shí)別的設(shè)備,連接成功

          unauthorized:沒(méi)有授權(quán),需要手機(jī)上授權(quán)后才能連接

          unkown:未識(shí)別的設(shè)備

          offline:離線設(shè)備

          主流安卓模擬器連接方式:
          夜神模擬器:adb connect 127.0.0.1:62001
          逍遙安卓模擬器:adb connect 127.0.0.1:21503
          天天模擬器:adb connect 127.0.0.1:6555
          海馬玩模擬器:adb connect 127.0.0.1:53001
          網(wǎng)易MUMU模擬器:adb connect 127.0.0.1:7555 MacOS:adb connect 127.0.0.1:5555
          genymotion模擬器:adb connect 127.0.0.1:5555
          谷歌原生模擬器:adb connect <設(shè)備的IP地址>:5555

          Monkey相關(guān)命令

          Monkey命令-事件數(shù)
          Monkey支持的所有命令

          adb shell monkey

          必選的命令:

          COUNT:事件數(shù)
          通過(guò)事件數(shù)量來(lái)測(cè)試穩(wěn)定性,如:

          adb shell monkey 次數(shù) 即,adb shell monkey 50
          注:可能小伙伴發(fā)現(xiàn)這速度也忒快了,我看都沒(méi)看清,這人的速度也沒(méi)這么快,不合理。哈,那接著,控制每一次操作的間隔時(shí)間

          Monkey命令-事件間隔
          –throttle 在事件之間插入固定延遲。通過(guò)這個(gè)選項(xiàng)可以控制Monkey發(fā)送事件的頻率。時(shí)間單位是ms(毫秒)1000毫秒=1秒

          例1:發(fā)送10個(gè)事件,持續(xù)執(zhí)行時(shí)間1分鐘

          adb shell monkey --throttle 6000 10,即10個(gè)事件,做完一個(gè)事件就等待6秒后再執(zhí)行

          備注:扯了半天,小伙伴想知道我要去檢測(cè)公司的app倒 底要怎么整

          指定包:

          p 此參數(shù)指定了一個(gè)包,Monkey將只允許系統(tǒng)啟動(dòng)這些包里的Activity

          -p -p 如果用此參數(shù)指定了多個(gè)包,Monkey將只允許系統(tǒng)啟動(dòng)這些包里的Activity
          例3:對(duì)58同城進(jìn)行穩(wěn)定性測(cè)試,執(zhí)行100次事件
          adb shell monkey -p com.wuba 100

          獲取包名:

          adb shell pm list packages

          知識(shí)點(diǎn):

          有可伙伴可能會(huì)問(wèn),我壓根不知道我學(xué)習(xí)的app的名包叫啥那怎么找呢?
          aapt dump badging D:\test\xxx.apk(APK的全名),如手機(jī)淘寶.apk


          Monkey命令-日志設(shè)置
          -v Level 0 除啟動(dòng)提示、測(cè)試完成和最終結(jié)果之外,提供較少信息

          -v-v Level 1 提供較為詳細(xì)的測(cè)試信息,如逐個(gè)發(fā)送到Activity的事件

          -v-v-v Level 2 提供更加詳細(xì)的設(shè)置信息,如測(cè)試中被選中的或未被選中的Activity。

          例4:對(duì)58同城進(jìn)行穩(wěn)定性測(cè)試,執(zhí)行100次事件,分別查看不同日志級(jí)別記錄的信息情況

          adb shell monkey -p com.wuba -v 100
          adb shell monkey -p com.wuba -v-v 100
          adb shell monkey -p com.wuba -v -v -v 100

          日志導(dǎo)出到本地:

          adb shell monkey -p com.wuba -v-v-v 100 >d:\wuba.txt

          Monkey命令-seed值
          在Monkey運(yùn)行過(guò)程中,肯定會(huì)發(fā)現(xiàn)異常、奔潰、無(wú)響應(yīng)等問(wèn)題,對(duì)于此類(lèi)問(wèn)題如何進(jìn)行復(fù)現(xiàn)呢?

          -s 偽隨機(jī)數(shù)生成器的seed值。如果用相同的seed值再次運(yùn)行Monkey,它將生成相同的事件序列。

          使用場(chǎng)景:

          復(fù)現(xiàn)bug,回歸測(cè)試(驗(yàn)證bug)
          adb shell monkey -s 1593077384911 -p com.wuba -v-v-v 100 >d:\wuba4.txt
          adb shell monkey -s 100 -p com.wuba -v-v-v 50

          在Monkey運(yùn)行過(guò)程中,我們可以通過(guò)結(jié)束進(jìn)程的方式來(lái)終止Monkey的執(zhí)行,當(dāng)然在運(yùn)行過(guò)程中遇到異常、奔潰等情況Monkey也會(huì)停止。為了保證執(zhí)行的事件數(shù)執(zhí)行完整,我們可以通過(guò)調(diào)試選項(xiàng)的設(shè)置來(lái)防止在運(yùn)行過(guò)程中Monkey命令的提前結(jié)束。

          –ignore-crashes 忽略在應(yīng)用程序出現(xiàn)crash時(shí)導(dǎo)致的monkey停止

          –ignore-timeouts 忽略在應(yīng)用程序出現(xiàn)ANR問(wèn)題時(shí)導(dǎo)致monkey停止

          –ignore-security-exceptions 忽略應(yīng)用程序發(fā)生許可錯(cuò)誤時(shí)導(dǎo)致monkey停止

          例5:對(duì)58同城進(jìn)行穩(wěn)定性測(cè)試,執(zhí)行50次事件,忽略過(guò)程中遇到的異常,直到50次事件完成

          adb shell monkey -p com.wuba --throttle 500 --ignore-crashes --ignore-timeouts --ignore-security-exceptions -v-v-v 50

          部份參數(shù):

          –pct-touch:觸摸事件 --pct-trackball :軌跡事件

          –pct-motion:動(dòng)作事件(手勢(shì)) --pct-nav :基本導(dǎo)航事件

          –pct-appswitch:啟動(dòng)activity事件 -pct-majornav:主要導(dǎo)航事件

          –pct-rotation:屏幕旋轉(zhuǎn)事件 --pct-syskeys:“系統(tǒng)”按鍵事件

          總結(jié):

          1、Monkey是對(duì)安卓apk進(jìn)行隨機(jī)事件的操作,通過(guò)報(bào)告來(lái)查看apk是否穩(wěn)定

          2、只適用安卓平臺(tái)

          3、根據(jù)公司不同產(chǎn)品的特性可設(shè)置不同概率來(lái)針對(duì)性測(cè)試或回歸(如抖音他的滑動(dòng)頻率高)

          作者:茶茶愛(ài)喝奶茶ya

          原文來(lái)源:https://www.cnblogs.com/TFBOYS0806/p/13578005.html


          瀏覽 76
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  欧美操逼视频 青青操 | 亚洲成人第一网站 | 艹美女视频 | 五月深深爱亭亭 | 国产一级A片 |