App性能測試工具MobilePerformance

1、 環境搭建html

安裝Android SDKpython

1.6或者1.7版本都可,建議1.7,環境變量的配置,Java SDK的安裝很簡單,不贅述了。app

安裝SDK工具

一、安裝Android SDK;測試

二、安裝完畢後啓動Android SDK Manger (SDK Manager.exe,在Android SDK的安裝目錄下),安裝須要的Android Packages,好比一些工具,須要的Android版本等等。須要注意的是google官網的下載常常失敗,這時就須要配置代理了google

Server:mirrors.neusoft.edu.cn,port:80url

三、 添加環境變量Android_HOME,值是Android SDK的安裝路徑;並把Android SDK下的platform-tools路徑和tools路徑添加到環境變量:Path (%ANDROID_HOME%\platform-tools; %ANDROID_HOME%\tools;)spa

(仍是不會配置安裝sdk環境的能夠訪問下面的連接:安卓開發環境搭建流程.net

安裝Python,版本2.7+命令行

一、下載並安裝Python2.7

二、將Python2.7的安裝路徑(也就是python.exe所在的目錄)添加到環境變量Path。

2、功能實現

測試項

一、monkey測試:輸入測試的時長,進行測試。經過模擬用戶的輸入以用來檢測會不會出現異常以及ANR和Crash等狀況的發生。

二、啓動時間測試:根據輸入的次數進行測試,啓動時間測試的是APP關閉後(APP不在後臺運行)的啓動時間,測試結束後將返回本次測試啓動時間的最大值、最小值、平均值以及執行的次數。

三、以上兩個功能只能採用自動測試的方式。

資源監控

一、cpu、內存監控:對操做過程當中APP的內存和CPU進行監控並製成圖表。

二、流量監控:對操做中APP的流量進行監控,並製成圖表。其中流量包括接受的流量和發送的流量。

三、監控部分能夠選擇手動操做和自動操做。手動操做就是本身點點點,自動操做當進行monkey測試和啓動時間測試時進行監控,具體操做過程請查看具體操做部分。

制定圖表

根據監控數據生成二維折線圖表。

生成報告

根據測試結果、數據、圖表生成html格式的報告。

3、具體操做

手動操做


 一、首先將手機用數據線和電腦相連

二、在將須要測試的apk放進工具主文件夾下的apk文件中,該apk要與手機上安裝的app程序是一致的,如圖:

三、手機連上電腦後請雙擊MobilePerformance文件夾下的run.bat便可啓動程序。如圖:

四、程序運行後以下圖所示:

 

五、點擊程序的設備檢測按鈕,不管手機是否鏈接成功都會有響應提示,如圖,請在手機鏈接成功時進行測試。

 

手機鏈接成功提示:

 

手機鏈接不成功提示:

 

六、須要進行手動操做時,測試項部分不能選擇,只能選擇資源監控部分的多選框,固然能夠選擇一項或者多項,可是不能不選擇。以下圖所示:

 

七、選擇須要監控的資源後,就能夠點擊開始按鈕了,如圖:

 

八、而後對手機進行操做

九、操做結束後點擊程序的結束按鈕,會有響應提示,請耐心等待,報告生成,如圖:

十、若是想繼續測試請重複以上步驟,若想退出程序,請點擊退出按鈕,如圖:

自動測試


 一、首先將手機用數據線和電腦相連

二、在將須要測試的apk放進工具主文件夾下的apk文件中,該apk要與手機上安裝的app程序是一致的,如圖:

 

三、手機連上電腦後請雙擊MobilePerformance文件夾下的run.bat便可啓動程序。如圖:

四、程序運行後以下圖所示:

 

五、點擊程序的設備檢測按鈕,不管手機是否鏈接成功都會有響應提示,如圖,請在手機鏈接成功時進行測試。

六、須要進行自動操做時,測試項部分必需要選擇一項並填寫相應的值,而後選擇資源監控部分的多選框部分,選擇相應的監控功能以下圖所示:

七、選擇須要監控的資源後,就能夠點擊開始按鈕了,自動測試不須要咱們本身去操做手機,也不須要點擊結束按鈕,資源監控監控的就是自動操做手機這段時間的數據,自動操做結束後稍等一會就回生成報告,如圖:

八、若是想繼續測試請重複以上步驟,若想退成程序,請點擊退出按鈕,如圖:

4、報告說明

生成的報告在MobilePerformance文件下的log文件夾中,每個task文件夾是一次測試的數據,如圖:

日誌文件夾中包括如下文件,如圖:

memory.log:是操做手機階段CPU和內存的日誌,如圖:

network.log:是操做手機階段接受流量和發送流量的日誌,如圖:

monkey.log以下:

Test_cpuInfo.jpg和Test_cpuInfo.png:是生成的cpu折線圖,只是格式不同。

Test_memoryInfo.jpg和Test_memoryInfo.png:是生成的內存摺線圖,只是格式不同。

Test_networkTraffic.jpg和Test_networkTraffic.png:是生成的流量折線圖,只是格式不同。

result_XXXX.html:是生成的HTML報告,XXX爲日期。

5、常見問題解決方案

手機已經鏈接了電腦,可是檢查設備仍是檢測不到。

答:先打開cmd,輸入adb devices命令,查看結果:

若是是以下顯示,則證實是手機未能成功鏈接電腦,如圖:

這種狀況有多是usb調試沒有打開,若已經打開仍是不行則能夠下載豌豆俠或360手機助手等工具進行鏈接,工具顯示鏈接成功後則執行adb devices命令查看,出現以下圖紅框的內容則證實鏈接成功,可進行程序的使用:

若是第一次使用程序沒問題,第二次就顯示鏈接程序不成功或者等一會就顯示不成功。

答:先打開cmd,輸入adb devices命令,查看結果,若是提示error: unknown host service這個錯誤則通常是5037端口被佔用問題

一、打開命令行,輸入命令:netstat -ano | findstr "5037",以下圖:

從以上命令的執行結果的第二列的冒號以後的就是端口號,最後一列就是進程的pid。根據該pid去任務管理器中查找對應的進程。

二、打開任務管理器,在菜單中查看->選擇列中將PID勾選上,而後點擊PID列的表頭,讓其遞增排序便於根據pid找到進程名稱。

從上圖能夠看出,進程pid爲8556的進程名稱是adb.exe,這個是正常的。若是是其它名稱,如tadb.exe,那麼就說明騰訊的QQ佔用該端口了。若是是其它的應用程序佔用了5037端口,你就須要將其手動結束掉,而後在運行adb命令,應該就能夠連上了。

三、若是以上手動不能殺死進程,則咱們須要更改咱們的端口號,只要在系統環境變量中定義ANDROID_ADB_SERVER_PORT的值便可。最好選擇一個5位數的端口號(10000~65535),不易重複

相關文章
相關標籤/搜索