天天看點

雲上的移動性能測試平台1. 功能決定現在,性能決定未來2. 雲上的性能測試工具3. 雲上資料看闆4. 未來規劃

1. 功能決定現在,性能決定未來

性能測試在移動測試領域一直是一個大難題,它最直覺的表現是使用者在前台使用 App 時的主觀體驗,然而決定體驗優劣的背後,涉及到了許許多多的技術變遷。

  • 當我們習慣于諾基亞時,智能機出現了;當我們學會native開發時,hybrid來了;當各種 hybrid 架構下的巨型應用傾向成熟時,小程式出現在了我們眼前;緊接着直播、iot、ar、vr、人工智能,新的技術與應用場景正在以無法想象的速度向前發展。性能測試技術在快速變化的場景與開發技術面前,面臨着巨大的挑戰,當我們還在糾結如何測試 a 時,b 就已經出來了。
  • 性能測試本身,有發展日漸成熟的解決方案,如線上性能監控APM、線下性能采集工具;有基于各個應用場景衍生的測試技術,如壓力測試、穩定性測試、功耗測試等;也有基于各項性能名額(記憶體、cpu、電量、流量)而來的各種專項測試能力。

我們緻力于打造線上線下一體的性能解決方案,希望能夠幫助開發者發現、定位與解決一系列移動端性能問題。本文将着重介紹 EMAS 性能測試平台的能力與規劃,還是那句話,功能決定現在,性能決定未來。

2. 雲上的性能測試工具

通常我們在進行專項測試(記憶體、cpu、電量、流量等)時,需要準備測試機型、測試包、測試環境、測試資料,會遇到以下問題:

  • 機型樣本數不夠多。
  • debug包不一定真實反應生産包的性能,但Android Studio需要debug包才能測試。
  • Android/iOS 測試環境的搭建與跨平台困難。
  • 大量測試資料整理分析。

以上這些問題很容易導緻整個測試效率的低下,甚至無法實施落地。

雲上的移動性能測試平台1. 功能決定現在,性能決定未來2. 雲上的性能測試工具3. 雲上資料看闆4. 未來規劃

基于EMAS雲真機的調試能力,MQC在雲上提供了更加完美便捷的性能測試工具。

雲真機天然提供多達600+款測試機型,支援調試測試所有已安裝應用,不依賴任何本地環境配置,測試資料一鍵上傳統計。

同時,EMAS性能測試工具有以下特點:

  • 基于 app_process 與 instruments 協定實作的移動雙端、跨平台性能采集;
  • 無侵入、短間隔(采集間隔穩定1s),低延遲(性能資料延遲小于100ms)、低功耗(對裝置性能影響低于1%);
  • 應用+程序的測試方案,滿足hybrid、小程式的測試需求。
    雲上的移動性能測試平台1. 功能決定現在,性能決定未來2. 雲上的性能測試工具3. 雲上資料看闆4. 未來規劃
雲上的移動性能測試平台1. 功能決定現在,性能決定未來2. 雲上的性能測試工具3. 雲上資料看闆4. 未來規劃

3. 雲上資料看闆

性能資料的意義在于它将我們常見的各種問題通過技術的手段進行度量與量化,可以幫助我們在産品功能上線前,盡可能的發現潛在的性能問題和風險。MQC性能測試平台将存儲于雲上的資料,以盡可能多的次元可視化給使用者,把好版本釋出前的關口。

3.1 任務

使用者使用雲真機進行的每一次測試任務與性能資料,都會直接儲存成測試任務,友善再次檢視與确認曆史資料。

雲上的移動性能測試平台1. 功能決定現在,性能決定未來2. 雲上的性能測試工具3. 雲上資料看闆4. 未來規劃

3.2 用例

在實際的測試過程中,我們很容易發現,不同應用場景的性能資料是完全沒有可比性的,在統計方法上隻看性能資料的平均值也很難直接給出定性和定量的判斷,沒辦法影響開發、産品的決策。

即便看似相同的場景,不同的産品決策也可能帶來很大的性能資料差距:比如大多數雲盤的相冊基于流量與性能的考慮,顯示的都是壓縮後的圖檔;而我們的本地的一些相冊軟體,顯示的基本都是原圖,這樣産品上的選擇便導緻了記憶體開銷上巨大的差異。

資料看闆在最初設計的時候就吸取了功能自動化用例平台時的建設經驗,将每一次性能測試任務分用例存儲,并且按照不同的用例次元對性能資料進行統計。在 EMAS 移動測試 控制台,不同子賬号檢視和管理相同的app與用例,滿足多使用者雲端協作的需求。

3.3 多元度聚合

在用例次元的基礎上,MQC 性能測試平台提供了多個次元的資料統計、聚合與分析能力。

• 裝置分級

根據裝置硬體性能打分,劃分為高、中、低三個級别。

由于不同等級機型對 APP 實際性能名額的影響較大,這個因子可以較大程度減少硬體性能對名額置信度的影響。

• 應用版本

對于性能名額來說,通常有三種問題判斷标準:

  • 基于行業技術經驗定義的基線名額,這通常是技術決策者基于使用者體驗、性能要求、大資料分析給開發提出的底線标準;
  • 同行業 APP 性能名額橫向對比,學習行業内優秀的技術實作一直是網際網路快速發展的重要原因之一;
  • 同 APP 不同版本間的縱向對比,快速的發現新版本的優化效果,新功能對 APP 的影響等。
    雲上的移動性能測試平台1. 功能決定現在,性能決定未來2. 雲上的性能測試工具3. 雲上資料看闆4. 未來規劃

• 名額分布

名額分布可以幫助開發者快速判斷名額區間,定位可能的異常任務與異常名額區間,更加有針對性的去查閱任務報告。

雲上的移動性能測試平台1. 功能決定現在,性能決定未來2. 雲上的性能測試工具3. 雲上資料看闆4. 未來規劃

4. 未來規劃

• 豐富名額:我們将繼續完善更多性能名額的采集方案,如電量、GPU、溫度等;

• 行業名額:MQC 将基于雲上開發者資料、專家測試資料,整理并統計各個行業性能名額作為參考分享出來;

• 性能基線:上文提到,通常性能名額的觀察标準有三,同行業APP性能名額;同APP不同版本性能名額;基于技術方案與行業資料的性能标準。性能基線的定義可以更好的限制開發者對極緻性能體驗的追求,最大可能降低性能問題出現的機率,如OOM、ANR問題。

最後附上示範視訊,請點選下方連結檢視

https://developer.aliyun.com/live/245866

繼續閱讀