APP性能測驗是什么
從網上查了一下,貌似也沒什么特別的定義,我這邊根據自己的經驗給出一個自己的定義,如有巧合純屬雷同,
客戶端性能測驗就是,從業務和用戶的角度出發,設計合理且有效的性能測驗場景,制定各性能場景下的客戶端性能指標(記憶體、CPU、卡頓數、幀率、電量、加載時長等),并制定規范化的執行流程,按照執行標準執行性能場景同時使用性能測驗具收集性能資料,并對資料進行分析,如果有性能問題并對問題進行定位,配合開發進行修復驗證發布,最后輸出完整的性能報告,
從上面的定義中,我們可以得出,在APP的性能測驗需要關注以下幾方面,性能測驗的場景的設計、性能指標的定義、規范化的執行流程、性能資料資料收集、性能資料分析、性能問題定位、性能測驗報告,
性能測驗并不是說我們上來找個工具,隨便跑個場景,拿到資料,輸出個報告,就可以了,每一步都應該做到有的放矢,從而體現出測驗人員的專業性,

APP性能測驗怎么做
下面我們分別來看一下:
性能測驗場景的設計
? 場景可能是一個操作的不斷重復,也可能是幾個操作的組合再重復,對于性能測驗的場景來說,他一定有重復的操作或者持續的操作,目的是通過重復或者持續的操作,把性能問題放大到一定程度,能夠讓我們發現問題,
? 舉個栗子:以B站推薦tab為例,想測驗feed滑動情況下的性能表現,那性能場景可以設計成,feed滑動50次,每次滑動間隔2s,
性能指標的定義
? 常見的移動端性能指標有:記憶體、cpu、幀率、卡頓數、wakp up數、展示時長等,關注什么性能指標是依托于我們的性能測驗場景,
舉個栗子:以B站推薦tab為例,當我們冷啟APP進入推薦tab的時候,更關注資料展示時長,滑動場景更關注卡頓數,為不同場景設計合理的性能指標也是我們需要認真考慮的,
規范化執行流程
? 場景和指標都定義好了以后,就要開始執行了,這里要求要規范化執行,規范化執行不是簡單的按照場景的定義去執行就好,而是要有很多關注的點,
可以定義的規范有哪些:
- 場景開始執行前需要等待多少s
- 執行后需要等待多少s
- 每次測驗需不需要冷啟或是必須重新安裝
- 安裝好需要等待多久才可以開始測驗
- 測驗賬號、測驗資料、設備、網路需不需要固定
? 每一個點都可能影響的性能資料的準確性,必須要定義規范,每次都要按著規范去執行,而且這個規范是動態,隨著我們不斷的測驗,會發現很多影響性能資料的問題,都必須定制規范,加以規避,同時好的規范能夠未我們后面進行性能資料分析打下基礎,

性能資料資料收集
性能資料收集可能是整個客戶端性能測驗中最簡單的部分了,有成熟的工具perfdog可以使用,方便簡單,也可以使用商業化的perfdog service實作自動化的性能資料收集,就是需要花錢,
性能資料分析
在收集到性能資料之后,就要去分析資料,如何分析,下面我簡單說一下,后面會出文章專門說如何對性能資料進行分析
- 走勢圖,從走勢圖上我們大致可以看出該場景在當前版本的性能表現,可以得出以下結論:
- 和之前版本的走勢圖進行對比,性能指標的波動情況
- 性能指標峰值、場景的均值以及漲幅的變化
- 場景的起始值與之前版本的變化
- 場景結束后的值與之前版本的變化
性能問題定位
在進行完性能資料分析以后,如果有問題,就需要去定位問題是那一塊業務的問題或者是哪一個mr引起的問題,就需要回溯,
- 先找開發,和開發溝通一下,看能否根據問題表象確定問題,如果確認不了,就需要測驗定位是哪個mr合入引起的
- 列出本次版本合入所有mr,篩選出那些mr是性能問題所在的業務
- 找mr合入前后的包重新跑,確認每個mr是否有影響
- 當確定是哪個mr合入引起的性能問題后,再次和開發溝通
性能測驗報告
性能測驗報告的目的是給出當前版本的性能表現情況,需要包含一些核心的模塊
- 測驗結論
- 性能問題歸因
- 各個場景的性能指標資料
- 測驗環境以及方案
- 各個場景的性能指標走勢圖
以上我對app性能測驗的一些粗淺理解和經驗,有問題可以留言,一起探討,,
歡迎大家訪問我的博客,有更多關于客戶端性能測驗、自動化測驗的內容, 博客地址
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/296319.html
標籤:其他
上一篇:吃飽年代
下一篇:云計算的未來在哪里
