做好性能測試,從來就不是一件簡單容易的事。搭建與生產環境相同的性能測試環境一直是做性能測試的第一步,也是很重要的一步。然而,由于其復雜的架構,測試手機程序和網站顯得更加困難。要覆蓋到不同種類(聯網,本地和混合應用)、不同平臺(iOS,安卓等等)和不同網絡環境(Wifi,2G,3G,3G+,4G LTE)也是手機測試面臨的一大難題。下面介紹一下幾個手機性能測試相關的主要難題。
模擬移動網絡的互聯網連接
與桌面程序的高帶寬相比,大多數手機用戶使用的3G,3G+和4G LTE網絡更慢,無線連接更差。性能測試要模擬不同手機網絡的接入情況,這對性能測試人員來說并非易事。
移動設備種類繁多
市面上有成千上萬手機廠商,每個手機廠商傾向于使用不同的操作系統和手機配置。而且,即便是同一個品牌的手機,也有無數的影響因素,每個手機模型都有特定的配置,比如操作系統,處理器,內存和屏幕尺寸等等。測試手機應用時,這些因素或多或少都應該被考慮到,絕對不是件輕松的事。面對這種情況,選擇一中功能夠用的性能測試工具變得越來越重要。
用戶數量巨大
隨著時間的推移,使用智能手機商務應用的用戶會急劇增加,越來越多的用戶會通過手機處理重要業務。用戶數量增加,相應的網絡應用也需要增加。你不僅僅要滿足現有用戶需要,還要適時地增加新功能,這對任何手機應用都是極其重要的。
桌面端網絡應用和手機應用的差別
不管是桌面端網絡應用還是手機應該,性能測試的基本原理是相似的,尤其是對于手機網絡應用的測試。兩者使用相同的技術,你也不用為手機應用選擇特別的性能測試工具。測試工具只需要具備基本的性能測試能力,測試人員基本上會用就行了。盡管如此,手機應用和桌面應用還是有如下幾個本質上的區別:
客戶端模式
傳統網絡應用運行在胖客戶端上,而手機應用使用的是瘦客戶端。胖客戶端直接從服務器端訪問應用,而不像瘦客戶端那樣需要將數據通過信號塔中轉,因而它比瘦客戶端吞吐量更大,速度更快。
網絡帶寬
網絡帶寬在性能中擔當重要角色,現今的桌面端應用極大地得益于高速網絡。移動網路也在帶寬方面不斷進步,不過任然無法與前者相提并論。大多數用戶在低于3G或4G的網絡下使用手機,應用的會話時間延長,用戶的響應時間也響應增加,同時也消耗了更多電量。相比桌面應用,帶寬是導致手機應用性能差的最大原因。
數據傳送
與桌面端應用強大的CS架構不同,手機數據得依靠信號塔傳送到用戶設備上。信號塔之間的數據傳送一直以來都很慢,也使得手機應用性能變差。
設備電量
網絡應用可以借助桌面電腦的高速處理器和內存最大化地提高性能,然而移動設備的資源卻非常有限。移動設備只能依靠有限的電池和內存資源。
操作方式
不像桌面應用那樣通過點擊鼠標來操作,移動設備使用手指操作從而獲得更好的用戶體驗。手指操作不如鼠標來得快。何況,設備其實需要將觸摸動作翻譯成點擊。
數據使用
在移動網路中,流量是收費的。數據緩存技術是桌面應用中提高用戶體驗的常用手段,但由于流量限制,此項技術在移動應用中無法實現。
性能指標
由于架構不同,網絡和移動應用的性能指標也有些許差別。除了常規指標如響應時間和資源利用量之外,還需要監控電池消耗、二進制大小等等。
隨著移動應用市場的發展,競爭也越發激烈,而做好app測試是保證產品質量的重要手段。