1. 程式人生 > >APP常見測試點總結

APP常見測試點總結

APP常見測試點總結:

1.安裝、解除安裝測試
主要針對編譯後源程式生成的APK安裝檔案。
主要測試點:a.生成的APK檔案在真機上可以安裝及解除安裝;
b.Android手機端的通用安裝工具,如:豌豆莢及91助手等工具可以正常安裝及解除安裝程式。

2.線上升級測試
測試點:a.驗證數字簽名 b.升級後可以正常使用 c.線上跨版本升級

3.業務邏輯測試
業務邏輯測試:主要測試客戶端業務能否正常完成
功能點測試:主要測試客戶端功能點是否正常使用
關聯性測試:主要測試客戶端與PC端的互動,客戶端處理完後,PC端與客戶端資料一致

4.異常測試
主要包含了斷網、斷電、伺服器異常等情況下,客戶端能否正常處理,保證資料正常性。

5.互動性測試
客戶端作為手機特性測試,包含被打擾的情況13種,來電,來簡訊,低電量測試等,還要注意手機端硬體上,如:待機,插拔資料線,耳機等操作不會影響客戶端。

6.易用性測試
介面與互動性測試:符合android互動規範,符合使用者使用習慣,操作方便簡單,具有一致性。
可用性測試:使用者體驗好,使用者操作方便,使用者使用錯誤率低。

7.適配測試
手機不同解析度支援:客戶端支援800480,960540,1920*1280等;
手機不通版本的支援:4.0, 5.0, 6.0;在測試計劃中,需要安排單獨的時間用於android不同系統的相容性測試,包括7.0版本等;
手機不同廠家系統的支援:不同廠家會有不同android系統,例如:小米收,華為輸入法。是市場主流的系統及廠家不同型號的支援;
手機不通尺寸的支援:4.0到7.0螢幕在UI顯示有區別的,要支援最大到最小。
解決方案:
a.自行購買或者使用借來裝置來實際驗證。耗費資金,購買幾臺。
b.第三方雲測試的解決方法。
c.整理不相容的地方,然後去分析app總可能不相容的程式碼。對技術能力的要求比較高,前期也需要花費不少的時間。
d.利用友盟等第三方統計平臺獲得應用對應的TOP N 的記性重點進行測試。

8.客戶端側效能測試
偏重客戶端側CPU、MEM、流量、電量以及客戶端在不同網路環境下響應速度等等。
大資料的測試:主要在特定環境下,客戶端一次性更新大量的資料,客戶端能否正常處理,分為三種情況:
a.客戶端第一次使用,的一次就更新大量資料
b.客戶端在平時更新中,更新大量的資料
c.客戶端已經在手機本地下載很多資料後,再次更新大量資料。

9.電量與流量測試
手機的電量及流量測試主要是為了站在使用者角度思考,畢竟電量、流量消耗比較大,會影響客戶的使用感受。手機端量使用是和CPU使用率成正比的。由於這個沒有比較詳細的規定,只能出一個通用範圍。CPU使用率不能超過10%以上,流量不要超過10M以上。一般通過android手機端一些監控軟體獲取資料。
當然也可以通過程式碼打點獲取。

10.記憶體洩漏測試
OutOfMemory。

11.外網與場景測試
主要是模擬客戶使用網路環境,檢驗客戶端程式在實際網路環境中使用情況及進行業務操作。外網測試主要覆蓋到wifi\3G\4G、net\wap、電信\移動\聯通,所有可能的組合進行測試。
原則:a.儘可能全面覆蓋使用者的使用場景,測試用例中需要包含不同網路排列組合的各種可能; b.模擬訊號被遮蔽時候,客戶端的影響等; c.做外部場景測試,在高山、丘陵、火車上等特殊環境下進行全面測試。

12.APP效能測試分類
客戶端:
a.應用測試(關注CPU、MEM、流量、GPU等)
b.ROM測試
c.其他(web頁面,現在APP大多都是web頁面)
伺服器端:效能測試方法和WEB差不多
tips:客戶端的測試其實比較推薦專用的硬體裝置來,這樣測出的資料更加準確,比如高速相機、功耗儀等

13.APP自動化測試分類
UI(robotium、Appium等)
介面
單元(junit、Robolectric等)
持續整合
tips:一句話,對程式設計要求高,邏輯性思維要求高

14.測試啟動時間
a.程式碼裡插入時間並列印Log.e
b.命令方式
adb shell
am start -W -n 包名/activity名
-W是指啟動完成之後,返回啟動耗時
c.秒錶、高速相機
d.adb logcat
adb logcat >d:\log.txt
啟動應用,待載入完成後ctrl+c停止
find “Displayed” d:\log.txt>d:\log1.txt
find “包名” d:\log1.txt>d:]log2.txt

15.程式碼靜態掃描
程式碼掃描工具Lint,它能非常容易得幫米找出程式碼上的結構問題
具體的檢察規則可以自定義(區域性,全域性)
lint --list 獲得檢查項id和簡要說明
lint --show xxx 獲得詳細說明
jenkins:持續版本構建,與lint搭配使用
lint:檢查已有規則規範
findbugs:針對java平臺程式碼的檢查

16.traceview
手機root,程式碼中埋點,加SD卡讀寫許可權。通過monitor.bat打卡.trace檔案。
Debug.startMethodTracing(“路徑”); //在oncreate方法中,開始埋點
Debug.stopMethodTracing(); //ondestroy中,結束

17.手機電量測試
a.利用硬體裝置:比如耗電量測試儀
b.第三方軟體來檢測:手機自帶電量監控、360助手、GT等
c.命令方式(5.0以上版本)
//初始化batterystats資料
adb shell dumpsys batterystats --reset
//得到整個裝置的電量消耗資訊
adb shell dumpsys batterys > /storage/sdcard0/Download/b1.txt
//得到指定app相關的電量消耗資訊
adb shell dumpsys batterystats 包名 > /storage/sdcard0/Download/b1.txt

18.測試流量
流量分兩種:a.操作app b.不操作app
測試方法:
a.各類雲測平臺、DDMS的Network
b.命令(模擬器不支援,某些真機不支援)
ps | grep com.android.browser 獲取pid
cat /proc/pid/status 獲取uid
cat /proc/uid_stat/uid/tcp_snd 傳送的流量byte
cat /proc/uid_stat/uid/tcp_rcv 接受的流量byte
c.android自帶api
long uidrx=TrafficStats.getUidRxBytes(10053); //10053表示uid
d.抓包(最好用root真機練習)
通過tcpdump抓包,再通過wireshark直接讀取報資訊來獲取流量

19.GPU
通過開發者模式-》顯示GPU過度繪製

20.CPU
a.第三方工具、各類雲測平臺
b.dumpsys命令
adb shell dumpsys cpuinfo | grep com.android.browser > /storage/sdcard0/Download/cpu.txt
c.top命令
adb shell top | grep com.android.browser > /storage/sdcard0/Download/cpu.txt
tips:關注活動狀態和靜默狀態下的情況

21.線上監控的方法
a.第三方的標準化的開源、商業產品,如Nagios、zabbix、Ganglia、百度統計等
b.自主研發的監控手機平臺
c.APM,比如聽雲
d.使用者反饋
app埋點監控測試:如友盟

作者:gantao754246624
來源:CSDN
原文:https://blog.csdn.net/gantao754246624/article/details/77985073
版權宣告:本文為博主原創文章,轉載請附上博文連結!