【課程總結】2020年12月26日

@AiRU發表於2020-12-28

時間過得挺快的,不知不覺一週的學習又快要結束了,本週的學習內容都比較相似,基本上是對市面上的主流軟體形式走了一遍,從C/S到B/S,以及馬上要說的移動端的軟體。一開始的話我本來是以為會涵蓋像PSV或者NS上的那些通用軟體的,但是課程內容還是主要以智慧手機上的app為主,就是不知道其他移動裝置上的軟體是否也是分類於app呢?

首先是簡單瞭解了一下app的發展,所謂APP(application)現通常指安裝在只能手機上的軟體,隨著網際網路技術的發展,從PC端向移動端流動的變化也是相當明顯的,經過這麼多年的發展,app也已經形成了自己的生態圈,逐步向著網路多元化、綜合化和智慧化的方向發展。

APP的測試流程仍舊是計劃、設計、測試、評估,這裡不再做進一步的贅述。

然後則是現在主流的移動端作業系統做了個簡單的介紹:

  • 先是Android,Android是Google開發的一個開源的平臺,其核心是Linux(這也是我第一次聽到Linux的實際用法),其應用程式都是通過Java來編寫的(說起來早期的手機遊戲似乎也都是用的Java?),由於該系統的執行機制是依賴於虛擬機器,系統需要佔用大量的記憶體來換取執行速度,再加上不定期的記憶體自動回收機制,久而久之,就會出現卡頓的現象。

  • 接著是IOS,IOS是蘋果公司開發的系統,它指定適合用Objective-C進行開發,而且執行機制上也是採用的沙盒機制,整個過程中不需要虛擬機器,所以它相比Android執行效率會更高一些。

那麼是測試方面,APP在測試上有很多是和C/S相類似的,比如UI測試、功能測試、安裝解除安裝、啟動執行、安全測試等,區別上主要是會多根據實機系統和硬體的情況作出調整。區別比較大的或者說專屬於APP的測試部分有:

  • 註冊登入:比如要考慮到使用者名稱和密碼的長度、格式是否有限制或規則要求(如果和其他端限制不一樣可能會導致無法登入);是否能夠和PC端(如果有)後臺的資料庫正常互動;能否支援三方的賬號登入等等
  • 前後臺切換:要考慮app切換到後臺再返回的情況,其他類似的還要考慮到鎖屏、複數app切換以及手機功能互動的優先順序等問題
  • 訊息推送:類似的需要考慮到鎖屏狀態、推送資訊欄狀態、推送許可權、免打擾模式等等問題下的測試
  • 異常測試:比如網路之間切換時、插拔外部硬體時、低電量執行等等情況的執行情況

從上面我們也可以看到,雖然說是類似一種移動端專屬的C/S結構,但是改過體量和操作環境後,也會有非常大的不同。就APP的測試經驗來說,首先要先確定好了裝置和平臺再進行著手,其中需要考慮的硬體引數也是非常的多:螢幕尺寸、解析度、畫素密度等等。第二個則是遇到多工同時執行和意外情況的處理,就像我們實際常用的,前臺瀏覽器後臺播放器的情況很多,由於智慧手機可視部分的限制使得我們不能像PC端一樣同時執行復數操作窗。就便利性來說,除了需要避免手勢衝突和訊息展示外還需要多關注使用者體驗,實際操作中還需要考慮對第三方app的整合和呼叫,可以說app體量雖小,但需要測試的部分缺一點都不少了。

那麼今天就寫到這裡
不知不覺元旦也近了,真是不錯

相關文章