PerfDog助力自動化性能測試探索

2020-09-14 騰訊WeTest

背景:遊戲項目採用敏捷開發,版本開發迭代很快,基本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 ide2.靜止頁面連接airtest ide3.靜止頁面斷開airtest ide連接不退出ide4.靜止頁面斷開airtest ide連接退出ide

FPS數據

是否開啟IDE對應用的fps絲毫不影響

內存

內存也沒什麼影響

CPU使用率

和第一組的結論一樣,也是開啟ide會對total cpu使用率造成影響,需要注意的是斷開IDE與手機的連接後性能消耗還在,因為mincap服務實際沒有被中斷,要退出關閉IDE cpu才會恢復正常。

第三組數據

所選則是手機APP,非遊戲

FPS

內存

CPU

我們發現結論和上面相同

推薦使用規範化CPU利用率

為什麼推薦這個值作為CPU使用率的衡量標準呢,因為發現還是規範化比較適合自動化,更為準確一些,關於規範化利用率的文檔:規範化利用率介紹

結論

完全可以使用自動化的方式獲取應用的性能數據啦,這是因為我們所獲取的數據都是針對單個應用,所以自動化的操作不會算法該應用之內,不過接入自動化sdk的就要另外考慮了,SDK所消耗的資源會被算在應用頭上。

相關焦點

  • 騰訊移動端性能測試工具PerfDog
    iOS測試時就要把GT打包進去。離開美圖後兩年內沒有再做移動端測試,然後去年發現android新版本ROOT非常困難,GT已經沒有辦法使用。被迫繼續用回XCode和Android Studio。 前段時間無意中發現了WeTest的PerfDog,正是自己想要的GT替代工具。
  • PerfDog使用說明書
    id=7介紹:移動全平臺iOS/Android性能測試、分析工具平臺。快速定位分析性能問題,提升APP應用及遊戲性能和品質。手機無需ROOT/越獄,手機硬體、遊戲及應用APP也無需做任何修改,極簡化即插即用。
  • 從零開始玩轉PerfDogService-----初探篇
    web展示,可以結合自己的中臺或者技術中心做可視化的數據展示2.根據自己的需求自定義一些工具3.構建本地的性能監控系統(IOS,Android雙端都可以)4.結合自己的自動化腳本做自動化性能測試或者開發雲測平臺
  • 「內測來襲」 一鍵搭建您的性能測試平臺
    PerfDog是一款移動平臺的性能測試工具,快速定位分析性能問題,提升APP應用及遊戲性能和品質。手機無需ROOT/越獄,手機硬體、遊戲及應用APP也無需做任何修改,極簡化即插即用,是全網唯一支持iOS/Android/小程序/H5等移動全平臺性能測試的工具。
  • FAQ | PerfDog常見問題解答第二期
    3) 以上還不行,請確認PC上ADB可能被獨佔(自動化測試框架、Android Studio工具等),請關閉工具及ADB.exe。 4)以上還不行,請用手機管家或手機助手檢測下。A PerfDog支持移動平臺所有應用程式(遊戲、APP應用、瀏覽器、小程序、小遊戲、H5、後臺系統進程等)、Android模擬器、雲真機等性能測試。支持APP多進程測試,如Android多子進程及iOS擴展進程APP Extension。
  • 移動端性能測試必備工具PerfDog性能狗
    致移動遊戲&應用性能測試分析的夥伴們:你是否會因移動遊戲&APP性能問題,而備受煎熬?你又是否因尋找性能測試分析工具,而彷徨迷茫?你是否因工具需要,而嘗試各種ROOT/越獄?你是否因工具準確性,而被逼各類花式複測驗證?
  • 性能測試工具PerfDog獲得中國計量科學研究院權威測試認證
    這是PerfDog自2019年11月面向全球開放以來,首次參與國家級最高法定計量機構評定,並成功獲得權威認證認可,標誌著PerfDog不僅在遊戲性能領域已經全面與國家級甚至國際標準接軌,具備持續穩定的向客戶提供準確、穩定和完整的性能測試能力,也代表了騰訊及全行業性能測試的領先水平。
  • 功能測試、性能測試、自動化測試區別
    (6)正交實驗設計方法(7)功能圖分析方法2、性能測試:性能測試是通過自動化的測試工具模擬多種正常、峰值以及異常負載條件來對系統的各項性能指標進行測試。性能和自動化的區別常常有剛接觸自動化和性能測試的同學問我,感覺性能測試和自動化測試是差不多的,我自己剛接觸的時候認為也是差不多的,區別就是:自動化一個用戶再跑,性能測試需要並發,需要設計各種場景。慢慢的做的多了,發現兩者區別還是挺大的。
  • PerfDog4.0探索,支持用戶自建web雲
    這個子進程幀率獲取對於目前來說使用多進程的應用來說非常有用哦,可能有些同學對於這個概念不是很清晰,我們來一步步探索;多進程簡介:Android平臺,一般大型APP,比如遊戲有時候是多進程協作運行(微信小遊戲,微視等APP及王者榮耀等遊戲多子進程),可選擇目標子進程進行針對性測試。默認是主進程。
  • 性能測試實踐 | PerfDog助力微信小遊戲/小程序性能調優
    運行性能:完成遊戲主流程對局5~10min, PerfDog記錄性能數據並上傳,取平均值,每種機型測試3組數據再取平均,內存峰值取最大值。啟動性能: 採用錄屏分幀方法獲取,取10次測試平均值。1.運行性能數據獲取:首先我們用同一款手機測試3次小遊戲的主流對局5~10min,取均值,微信是多線程運行的為了更準確的測試,我們可以用PerfDog對小遊戲的線程進行測試。
  • Testin王軍:真機自動化雲測試助力移動網際網路創業
    在成都舉辦的2013年國際軟洽會新一代軟體測試技術研討現場,來自全球首家移動App真機自動化雲測試權威機構Testin雲測試的CEO王軍做了題為《自動化雲測試助力移動網際網路創業》的演講。  據王軍介紹,使用Testin自動化雲測試開發者可以大幅降低成本,尤其適合創業企業資金匱乏,採購測試設備及招募專業測試人員困難,他介紹了一些實際的數據對比:  1、大幅度節省測試方面的勞動力,由於該平臺採用自動化測試技術
  • 數碼博主測評手機必備的幀率測試軟體,QQ旗下PerfDog性能狗
    我們今天介紹一下我現在使用的性能評測軟體,我試過很多測試軟體,最終篩選出現在這個,分享給大家。一般測試軟體有5個痛點,性能狗(perdog)這個軟體都解決了。他可以在手機端實時顯示而不遮擋內容。不需要插線連接電腦,數據更真實更多,無線才可以測功耗和發熱。蘋果安卓都能用,包括手機平板甚至電視盒子。可以記錄高幀率的屏幕,上限150Hz。
  • 遊戲測試 Perfdog 實戰之減少 CPU 消耗
    導語:最近在測試過程中發現了一些比較典型的性能問題,所以來分享下作為測試怎麼為解決問題提供更多的有效信息,本次主要從優化角度分析Perfdog測試報告。本次主要介紹關於CPU的優化;怎麼獲取測試報告此處不再贅述,有關perfdog怎麼使用的教程可以參考Perfdog使用教程# 1.
  • 「自動化測試解放雙手」,測試自動化好處大盤點
    如果對軟體測試、接口、自動化、性能測試、測試開發、面試經驗交流。感興趣可以1079636098,群內會有不定期的發放免費的資料連結,這些資料都是從各個技術網站搜集、整理出來的,如果你有好的學習資料可以私聊發我,我會註明出處之後分享給大家。1.
  • Android如何測試微信小遊戲&小程序?
    「微信小遊戲性能評測標準建立的初衷是希望能引導開發者優化相關性能數據,提升用戶體驗。評測標準根據小遊戲整體的性能數據表現、玩家體驗評價,結合作業系統、機型分檔、網絡條件等多種維度建立。」—摘自《微信官方文檔•小遊戲》 PerfDog作為移動全平臺性能測試分析工具,開發者可以利用PerfDog進行性能數據獲取及分析,提升小遊戲&小程序的性能和品質。
  • 功能測試如何轉型自動化測試
    +自動化+接口測試+性能測試這個中間的自動化裡面就包含了很多東西了,包括了搭建測試框架,他能帶團隊做自動化。作為測試行業的人Python毫無疑問是首選。不管你自己搭建框架、還是做平臺、做性能,用Python各種腳本非常方便。容易上手效率也高。還可以做一些爬蟲、大數據分析,圖像識別。
  • 什麼是自動化測試?了解一下~
    軟體測試招聘方面基本上都有關於自動化測試的要求。了解 selenium、appium或者其他自動化測試框架至少熟悉一門面向對象開發語言,會使用JMeter、Postman等接口測試工具等等,這些相信在招聘信息上都看過,就不詳細列舉了。本文主要的目的就是科普一下什麼是自動化測試。
  • 中興通訊助力天津港5G自動化示範區實船系統測試
    e公司訊,中興通訊消息,近日,全球首次貨櫃傳統碼頭5G無人自動化改造全流程實船系統測試在天津港獲得成功。後續,中興通訊將繼續攜手天津聯通,助力天津港打造5G創新應用平臺。
  • 同樣是軟體測試工程師,為什麼自動化測試工資更高?
    很多小夥伴一定會有這樣的疑問,同樣是軟體測試工程師,為什麼自動化測試的薪資更高?甚至有的自動化測試工程師的薪資已經超過了開發,這篇文章就來為大家一一解答。市面上普遍的軟體測試主要分為功能測試、性能測試、自動化測試這三類,根據第三方平臺「職友集」發布的薪資來看,以西安地區為例,功能測試的平均薪資為6.5k/月,性能測試的平均薪資為8.9k/月,而自動化測試的平均薪資已經達到了12k/月,自動化測試的薪資已經遠遠超過功能測試和性能測試,甚至快是功能測試薪資的2倍之多。
  • 從功能測試轉成自動化測試,軟體測試工程師該如何成功轉型?
    所以想做自動化,首先得了解一下自動化測試的一些常見問題。1. 什麼是自動化測試?自動化測試,顧名思義,自動完成測試工作。通過一些自動化測試工具或自己造輪子實現模擬之前人工點點/寫寫的工作並驗證其結果完成整個測試過程,這樣的測試過程,便是自動化測試。