国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

手把手用Monkey寫一個壓測腳本

tomato / 3124人閱讀

摘要:一為什么需要一個測試腳本昨天講解了命令的使用方式,今天趁著還熱乎就手把手用寫一個壓力測試的腳本。對一些在測試情況下,各項狀態的監控并不好。一個簡單的測試腳本,包括這些基本上就足夠了。六多說兩句其實這個的壓力測試腳本,已經滿足測試的基本要求。

版權聲明:

本賬號發布文章均來自公眾號,承香墨影(cxmyDev),版權歸承香墨影所有。

允許有條件轉載,轉載請附帶底部二維碼。

一、為什么需要一個測試腳本?

昨天講解了Android Monkey命令的使用方式,今天趁著還熱乎就手把手用Monkey寫一個壓力測試的腳本。還不了解什么是Monkey的,可以看看昨天的文章。

Monkey說到底其實就是一段命令,只能在有限的范圍內做一些隨機事件的壓力測試。可以很明顯看到它的一些缺點:

前期準備工作太多,需要把設備準備好、安裝好待測Apk。

無法做到無干預的循環。類似沒人看著去測試一夜的情況。

對一些在測試情況下,各項狀態的監控并不好。

那么,這些問題,其實都可以使用一個腳本來解決問題。

Monkey命令其實就是在命令行中執行的命令,所以腳本語言基本上都可以完成這個任務,這里選擇主流的Python來完成。

二、如何設計壓測腳本

既然是一個完整的腳本,那么當然需要滿足一些最基本的需求。

包括:

可以自動安裝待測試apk。

可以循環執行腳本,并且每次都退出App重新執行。

在執行完成之后,可以輸出測試報告。

變動的參數,可以讓測試人員自行配置。

一個簡單的測試腳本,包括這些基本上就足夠了。

三、動手寫腳本

編寫完成之后,Python的項目結構大概是這樣子的。

項目的結構大概如下:

apk目錄:用于存放待測試的Apk。

bugreport_out目錄:用于存放測試完成輸出的報告。

.config:壓力測試的配置信息文件。

chkbugreport.jar:輸出測試報告的工具。

runmonkey.py:真正需要執行的Python腳本。

start.bat:為測試準備一個點擊就可以執行的bat腳本。

了解了項目的結構之后,就可以開始編寫Python腳本了。

1、編寫配置文件和讀取配置文件

首先看看.config配置文件。

在配置文件里,主要配置待測試的設備ID、循環執行次數,和每次循環的時候點擊的次數。

這樣設計,基本上可以通過execcount和monkeyclickcount兩個參數,配置所需要執行多久的一個壓測方案。

接下來就需要一個方法去讀配置文件。

2、安裝待測試apk

一般測試都是會測試同一個apk產品,所以這里寫死apk的文件名。直接通過os.popen()這個Python的方法執行adb腳本。

3、殺掉待測app

為了讓每次循環都是新的一個測試任務,保持測試環境的趕緊,需要一個方法在每次循環之前,殺掉之前正在運行的待測App。

4、生成測試報告

生成測試報告主要依賴chkbugreport.jar這個工具,它會根據bugreport獲得的文件內容,生成測試報告。

bugreport的用法:

adb shell bugreport > .ugreport.txt

而chkbugreport.jar是一個java編寫的工具,直接通過java -jar 執行即可

完整的代碼如下:

5、開始執行Monkey腳本

做完準備工作,就需要一個方法來執行我們配置好的Monkey腳本。

各項參數的配置,不明白的看看昨天的文章吧。

6、開始調用準備好的方法

準備工作已經完成,接下來將這些準備好的方法,組合起來,用一個for循環完成腳本的執行。

四、為測試人員準備一個bat

做完這些,基本上就算是把主要功能完成了。執行下面的命令,就可以跑起來了。

python runmonkey.py

但是終歸這個腳本是要給測試用的,最好還是提供一個點擊可用的bat腳本。

新建一個start.bat文件,把上面的命令保存進去就行。

下面看看執行起來的樣子。

這里配置了循環三次,所以最終從Log中可以看到,確實執行三次之后,生成測試報告,并且退出測試。

五、生成的測試報告

chkbugreport.jar 可以通過生成的bugreport的內容,生成我們需要的測試報告。

從上面的截圖可以看到,其實它會是一個網頁,輸出的內容非常的齊全。

六、多說兩句

其實這個Monkey的壓力測試腳本,已經滿足測試的基本要求。但是實際上,生成的測試報告,不太好查看。通常封裝成成熟的產品的App,都會集成第三方Bug監控的服務,例如:Bugly、友盟什么的。所以可以不以來bugreport生成的測試報告,直接在打測試包的時候,生成一個測試渠道的apk,用它來測試,這樣在第三方服務提供的網站上,可以清晰看到測試的報告。

七、完整的Demo

完整的Demo請關注承香墨影的公眾賬號,回復關鍵詞:“monkey腳本”獲得。

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/38482.html

相關文章

  • 【人情事故】做了3年銷售一事無成,轉行軟件測試成功后我就拿了8k!

    摘要:以下為我的真實案例以我真實案例分享,希望給更多決定重新開始的人以鼓勵我已經上班很久了,目前在中軟做軟件測試工程師,月薪,現在回想起來,仍然慶幸我當初的決定。 ?今天跟大家分享我的故事,或許你也曾像他那樣迷茫過。17年軟件工程專業專科畢業之后做了3年的銷售工作,最后決定還是再次提升專業技能,...

    _Zhao 評論0 收藏0
  • 有贊全鏈路壓測引擎的設計與實現

    摘要:工欲善其事,必先利其器,我們拿什么工具來壓測呢我們做了很多前期調研和論證,最終決定基于開發有贊自己的分布式全鏈路壓測引擎。 一年以前,有贊準備在雙十一到來之前對系統進行一次性能摸底,以便提前發現并解決系統潛在性能問題,好讓系統在雙十一期間可以從容應對劇增的流量。工欲善其事,必先利其器,我們拿什么工具來壓測呢?我們做了很多前期調研和論證,最終決定基于 Gatling 開發有贊自己的分布式...

    Euphoria 評論0 收藏0
  • 有贊全鏈路壓測實戰

    摘要:有贊對于性能測試主要有線下單系統單接口線上單系統以及線上全鏈路壓測等手段,通過不同維度和顆粒度對接口系統集群層面進行性能測試,最終保障系統的穩定性。這里主要講述一下,有贊全鏈路壓測的相關設計和具體的實施。 一、前言 有贊致力于成為商家服務領域里最被信任的引領者,因為被信任,所有我們更需要為商家保駕護航,保障系統的穩定性。有贊從去年開始通過全鏈路壓測,模擬大促真實流量,串聯線上全部系統,...

    Drinkey 評論0 收藏0
  • 超全的App 測試工具大全,收藏這篇就夠了【附帶官網|GitHub地址】

    摘要:三性能測試工具官網介紹騰訊開源的的隨身調測平臺,支持和。官網介紹騰訊游戲部門開發的移動全平臺性能測試分析工具平臺。百度的服務目前主要為收費服務。 隨著移動互聯網的高速發展,App 應用非常火,測試工程師也會接觸到各種 app 應用。除了人工測試之外,也可以通過一些測試工具來提高我們的測試效率...

    MRZYD 評論0 收藏0

發表評論

0條評論

tomato

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<