PerfDog 助力自動化效能測試探索
背景:
遊戲專案採用敏捷開發,版本開發迭代很快,基本1-2週一個版本
效能測試必要性
效能問題在整個專案的階段數量
效能問題不是一開始就有的,也不是某一天突然出現的,而是隨著我們的開發進度不斷累積產生的;
到後來我們希望用幾天的時間去解決幾個月甚至幾年的問題,而實際上結果往往不會盡如人意。而且相同的問題,相同的人,在不同的時間去處理所花費的經歷與時間完全不同。
所以說效能問題看上去是研發團隊的技術問題,但本質上其實是研發團隊的開發流程問題
如果我們可以規範流程,做到每一個版本皆有一份資料展示,一旦發現問題,及時處理,那麼可以大大減少以後的優化時間;而人力每個版本做效能又比較雞肋,所以完全可以採用自動化的方式處理,那麼自動化的操作究竟會不會對我們得到的效能資料產生影響,下面我們來探索下;
自動化對應用效能資料的影響
第一組測試對比
測試背景:
1.開啟Perfdog,記錄手動跑功能和自動化跑功能的效能資料
2.本次所使用自動化功能為Airtest
測試用例:
1.未開啟Airtest IDE連線,手動跑功能
2.開啟Airtest IDE連線,手動跑功能
3.開啟Airtest IDE連線,使用自動化指令碼跑功能
4.斷開Airtest IDE連線
5.關閉Airtest IDE程式
自動化指令碼:
只會執行一個戰鬥小功能,很短的時間
下面測試用例的斷開連線是指:
先來看看FPS
很明顯我們發現是否採用自動化的方式跑遊戲功能對比FPS的影響幾乎沒有
再來看看記憶體
發現自動化對記憶體也沒有影響,開不開自動化對於記憶體幾乎都一樣
再來看看CPU
我們發現在開啟airtest的IDE連線時,Total cpu的使用率顯著上升,在跑自動化指令碼時Total cpu的使用率也在上升。而app的cpu使用率幾乎是沒有影響的。
這是因為在開啟airtest ide的連線時,ide要使用minicap服務獲取手機的螢幕截圖,所以會對cpu的整體使用率有影響,而在執行指令碼時airtest要進行影像搜尋匹配,所以也要佔用cpu。但是對於app的使用率則不會有影響。
第二組測試對比
本次測試不適用自動化指令碼,單獨對比ide的影響
測試用例:
1.靜止頁面不連線airtest ide
2.靜止頁面連線airtest ide
3.靜止頁面斷開airtest ide連線不退出ide
4.靜止頁面斷開airtest ide連線退出ide
FPS資料
是否開啟IDE對應用的fps絲毫不影響
記憶體
在這裡插入圖片描述
CPU使用率
和第一組的結論一樣,也是開啟ide會對total cpu使用率造成影響,需要注意的是斷開IDE與手機的連線後效能消耗還在,因為mincap服務實際沒有被中斷,要退出關閉IDE cpu才會恢復正常。
第三組資料
所選則是手機APP,非遊戲
FPS
記憶體
CPU
我們發現結論和上面相同
推薦使用規範化CPU利用率
為什麼推薦這個值作為CPU使用率的衡量標準呢,因為發現還是規範化比較適合自動化,更為準確一些,關於規範化利用率的文件:
規範化利用率介紹
結論
完全可以使用自動化的方式獲取應用的效能資料啦,這是因為我們所獲取的資料都是針對單個應用,所以自動化的操作不會演算法該應用之內,不過接入自動化sdk的就要另外考慮了,SDK所消耗的資源會被算在應用頭上。
相關文章
- 移動端效能測試必備工具 PerfDog 效能狗
- 移動效能測試---工具PerfDog簡單使用
- iOS自動化測試驅動工具探索iOS
- WeTest 明星工具-移動端效能測試 PerfDog 初探
- 效能測試實踐 | PerfDog 助力微信小遊戲 / 小程式效能調優遊戲
- 效能測試實踐 | PerfDog助力微信小遊戲/小程式效能調優遊戲
- 功能測試、自動化測試、效能測試的區別
- 自動化測試系列 —— UI自動化測試UI
- 效能狗(Perfdog)測試與資料分析
- 從探索到突破:網易雲音樂Android自動化效能測試實踐Android
- 騰訊質量效能提升最佳實踐:智慧自動化測試探索和建設
- 【自動化測試入門】自動化測試思維
- 實用測試技能分享:jmeter+Jenkins效能測試自動化搭建JMeterJenkins
- 測試面試題集錦(五)| 自動化測試與效能測試篇(附答案)面試題
- 軟體測試(功能、介面、效能、自動化)詳解
- 騰訊效能測試工具——PerfDog使用初體驗
- [python] request 介面測試自動化指令碼轉化為 [locust] 效能測試指令碼Python指令碼
- Flutter UI自動化測試技術方案選型與探索FlutterUI
- 自動化裝置測試與自動化測試的區別
- 如何做自動化測試?什麼是自動化測試?
- 2021年軟體測試工具大全(自動化、介面、效能、安全、測試管理)
- 軟體測試:自動化測試
- 測試自動化後,我們需要怎樣的QA?(深挖探索性測試)
- airTest自動化測試AI
- selenium自動化測試
- 自動化測試篇
- python自動化測試Python
- API自動化測試API
- 自動化測試框架框架
- 自動化測試理解
- 自動化測試思路
- jest 自動化測試
- 介面自動化測試
- Python實現效能自動化測試竟然如此簡單Python
- 客戶端效能測試利器PerfDog嚐鮮體驗客戶端
- 測試開發之自動化篇-自動化測試框架設計框架
- PerfDog 效能狗實測智慧手錶效能
- PerfDog效能狗實測智慧手錶效能