對於手機軟件app主要是進行系統測試。而針對手機應用軟件APP的系統測試,我們通常從如下幾個角度開展:功能模塊測試、兼容性測試、安裝和卸載測試、軟件更新測試、性能測試、用戶體驗性測試、交叉事件測試、用戶界面測試等
常見的功能類缺陷
APP崩潰
這是測試中的常見問題,這類問題也是非常嚴重的,會直接影響用戶對產品的第一印象,例如我們正在使用某個APP,正在使用突然應用就停止響應,界面上彈出“強制關閉錯誤”的窗口,需要強制關閉應用,或者正在使用時出現閃退的現象。這些情況都很影響用戶的體驗,導致用戶卸載該APP。通用的觸發移動APP崩潰的測試場景,如下:
- 驗證在有不同的屏幕分辨率,操作系統和運營商的多個設備上的APP行為;
- 用新發布的操作系統版本驗證APP的行為;
- 驗證在如隧道,電梯等網絡質量突然改變的環境中的APP行為;
- 通過手動網絡從蜂窩更改到Wi-Fi,或反過來,驗證APP行為;
- 驗證在沒有網絡的環境中的APP行為;
- 驗證來電/短信和設備特定的警報(如警報和通知)時的APP行為;
- 通過改變設備的方向,以不同的視圖模式,驗證APP行為;
- 驗證設備內存不足時的APP行為;
- 通過用測試工具施加載荷驗證APP行為;
- 用不同的支持語言驗證APP行為。
功能未實現或只實現了部分
這類問題在測試過程中也經常出現,送測的版本有的只實現了部分功能,未實現產品需求說明書里的全部功能,例如賬單明細查詢,要求顯示每筆交易賬單的明細並且顯示是否已入賬,開發實現了每筆交易賬單的明細,但是未實現顯示該筆賬單是否已入賬。
功能實現錯誤
未按產品需求說明書中的功能實現,如按照產品需求說明書,白名單內的用戶進行登陸時不受單點登陸的限制,也就是說同一個賬號可以同時在A手機和B手機登錄,但是開發實現錯誤,白名單內的用戶在A手機登錄后,在B手機登錄,然后點擊A手機上APP的功能,會彈出提示:該賬號在B手機已登錄,A手機強制退出登錄。
功能測試要點
- 根據產品需求文檔編寫測試用例;
- 軟件設計文檔編寫用例;
- 測試要求:保證輸入數據正確,並且進行了正確的操作,明確正確的輸出結果和中間數據數值及格式。
兼容性測試要點及常見的兼容性缺陷
IOS 系統常見版本有7.0、8.1、8.4、9.1等,硬件常見 iPhone 4S、iPhone 5、iPhone 5S、iPhone 5C、iPhone 6、iPhone 6S、iPhone Plus、iPad 系列;安卓常見的版本有4.3、4.4、5.1、6.0,硬件更是數之不盡,不同的品牌,常見的如三星系列、華為系列、小米系列、OPPO 系列、VIVO系列等;
測試APP在不同的機型上由於軟件、硬件等不同而出現各種各樣的問題,這些都是缺陷聚集的地方,一個頁面可能在安卓手機上顯示正常,但可能在iPhone手機上顯示錯位,所以測試中盡量覆蓋主流的手機型號和版本,如iPhone系列、三星系列、華為系列、小米系列、oppo系列、vivo系列等,找出在這些主流手機上使用app出現的缺陷並修復。
安裝、卸載測試要點及常見缺陷
常見的安裝、卸載類缺陷
- 安裝過程中出現閃退;
- 安裝完成后,點擊APP無反應;
- 安裝完成后,點擊APP,APP出現閃退;
- 已經存在舊版本,但不卸載舊版本,進行覆蓋安裝新版本時,版本號是新版本的版本號,但APP的內容仍然是舊版本。
安裝、卸載測試要點
安裝測試很重要,用戶使用APP的第一個動作就是安裝APP,如果安裝APP出現問題,會讓用戶直接棄用該APP。測試中主要從以下方面進行測試:
- 應用是否可以在IOS不同系統版本或Android不同系統版本上安裝(有的系統版本過低,應用不能適配);
- 軟件安裝后是否可以正常運行,安裝后的文件夾及文件是否可以寫到指定的目錄里;
- 安裝過程中是否可以取消,安裝空間不足時是否有相應提示;
- 檢查安裝包是否齊全,尤其DLL, 檢查安裝手冊;
- 如果應用需要通過網絡驗證之類的安裝,需要測試一下斷網情況下是否有相應提示;
- 是否可以刪除應用(可通過桌面刪除,也可以通過軟件卸載安裝。曾發現在IOS手機上有個應用安裝時未完全安裝,終止安裝后,未完成安裝的應用圖標一直顯示在手機上,並且無法成功刪除);
- 測試卸載后文件是否全部刪除所有的安裝文件夾;
- 卸載過程中出現死機,斷電,重啟等意外的情況,待環境恢復后是否可以正確卸載;
- 卸載是否支持取消功能,單擊取消后軟件卸載情況是否正常。
軟件更新測試要點
- 當客戶端有新版本時,有更新提示;
- 軟件更新一定要測,確保Android軟件更新可以正確更新新版本,且安裝運行正確;
- 確保IOS軟件更新會有限制,正式版只有上了商店且有版本更新時才能測試;
- 用戶取消版本更新時,老版本可以正常使用,但是下次啟動應用時,仍出現更新提示;
- 當有新版本時,不刪除客戶端的情況下,直接更新檢查是否能正常更新,且更新后客戶端的功能是否最新版本(正常來講不用強制刪除本地客戶端可以正常更新);
- 出現跨版本更新的時候,可以更新成功。
性能測試要點及常見缺陷
常見的性能方面的缺陷
- 加載時間過長;
- 應用程序首次啟動速度慢;
- 進入某個界面速度慢;
- 啟動某一有動畫效果的界面,動畫執行過程不流暢,或者動畫執行卡頓時間長;
- 響應某一用戶事件時長時間無響應;
- 應用長時間運行后,隨機出現卡頓現象;
- 服務器無法響應,報HTTP500錯誤;
- APP出現黑白屏;
- APP崩潰。
性能測試要點
性能也是衡量APP質量的一個指標,如果加載時間過長,響應時間過長,用戶沒耐心等待,很可能直接卸載APP
- APP的啟動時長是否過長;
- APP使用時對CPU、內存的消耗情況;
- APP使用時Crash的幾率是否較多,可以進行埋點分析測試;
- APP使用時,電量流量的使用;
- 反復長期的操作情況下,系統該資源的使用情況;
- 響應能力測試,驗證各種情況下不通操作能否滿足用戶的響應請求。
用戶體驗性測試及常見缺陷
以主觀的普通消費者的角度去感知產品或服務的舒適、有用、易用、友好親切程度。通過不同個體、獨立空間和非經驗的統計復用方式去有效評價產品的體驗特性,提出修改意見提升產品的潛在客戶滿意度。主要從易用性和友好性方面進行測試。
常見缺陷
- 界面顯示是否美觀,界面的色彩、字體大小是否合適、布局是否美觀,提示語是否友好;
- 按鈕、對話框、列表和窗口等是否符合用戶的使用習慣;
- 是否易於導航、導航是否直觀、導航與頁面結構、菜單、連接頁面的風格是否一致。
用戶體驗性類的缺陷
- 界面顯示不美觀、界面色彩用戶使用不舒服、界面色彩和按鈕、其他的編輯框等不搭調、圖片和字體顯示布局不美觀(文字包圍圖片方面)、界面的字體不滿足視力不好的用戶、菜單層次太深、相關的選項離得太遠、按鈕不可點擊(如果按鈕處於不可用狀態,一定要灰掉,或者拿掉按鈕,否則會給用戶誤導)
- 超長的頁面加載時間,移動端的要求比較高,一般要求無等待間隔的加載,頁面加載時間過長,會導致用戶沒耐心等待而棄用該APP。
- 頁面排版過長,一般很少有瀏覽者有興趣看頁面中最下面的內容, 90%的用戶,打開一個頁面,只瀏覽第一屏的內容,就以為看到了全部,而不會向下滾動。一個過長的頁面很容易引起瀏覽者的視覺疲勞;
- 不友好的導航,不友好的導航是最影響用戶操作的,不能讓用戶很方便的找到自己想到的內容。用戶來到一個頁面不知如何返回上一頁,不知道當前頁面是在哪個欄目下的。這樣很可能用戶來了一次就不會再來了,這也是現在比較強調信息架構設計的原因,導航設計是信息架構中的一部分。用戶每次都得用重新打開APP的方式來尋找內容的話,很難有用戶會留存;
- 過期的信息,很久不更新的信息,很容易讓瀏覽者感到反感,而且在心中也會對你這個產品的品牌形象大打折扣。過期的新聞,過期的促銷信息、活動信息都是致命傷;
- 死鏈接或鏈接錯誤;
- 缺少互動的內容,缺少用戶的參與,不能讓用戶表達情感和思想,注定這個產品只是個固步自封的產品。現在最基本的,都要提供的一個“意見反饋”的入口,以便產品的忠實用戶發表看法,從而收集這部分反饋去改進產品。再者有互動的口子,也會讓用戶覺得產品是比較開放的;
- 惡意插件,惡意彈出窗口;
- 提示語粗暴不友好。
交叉事件的測試要點及常見缺陷
針對智能終端應用的服務等級划分方式及實時特性所提出的測試方法。交叉測試又叫事件或沖突測試,是指一個功能正在執行過程中,同時另外一個事件或操作對該過程進行干擾的測試。如;App在前/后台運行狀態時與來電、文件下載、音樂收聽等關鍵運用的交互情況測試等。交叉事件測試非常重要,能發現很多應用中潛在的性能問題。
交叉性方面缺陷
手機的基本功能就是作為通訊工具進行使用,所以我們在使用APP中肯定會有電話、短信、藍牙、鬧鍾等進入,並且這些功能比APP的優先級高,一旦同時出現, APP要后台運行或者進行處理讓基本功能優先工作。在測試過程中會出現電話進入APP崩潰或卡死的現象,鬧鍾響起APP掛起等現象、 APP運行同時電話進入,電話無法接聽等。這方面的問題非常嚴重,如果APP引起手機基本功能無法使用,用戶是無論如何也接受不了的。
交叉事件主要測試要點
- 多個APP同時運行是否影響正常功能;
- APP運行時前/后台切換是否影響正常功能;
- APP運行時撥打/接聽電話;
- APP運行時發送/接收信息;
- APP運行時發送/收取郵件;
- APP運行時切換網絡(2G、3G、Wi-Fi);
- APP運行時瀏覽網絡;
- APP運行時使用藍牙傳送/接收數據;
- APP運行時使用相機、計算器等手機自帶設備。
用戶界面測試要點及常見缺陷
測試用戶界面(如菜單、對話框、窗口和其它可規控件)布局、風格是否滿足客戶要求、文字是否正確、頁面是否美觀、文字、圖片組合是否完美、操作是否友好等。
UI測試的目標是確保用戶界面會通過測試對象的功能來為用戶提供相應的訪問或瀏覽功能。確保用戶界面符合公司或行業的標准。包括用戶友好性、人性化、易操作性測試。
用戶界面類的缺陷
- 不符合 UI 設計或與界面原型不一致
如APP的某個功能的界面風格和整體界面風格不一致,或者和圖片、文字、按鈕等不協調,此類問題雖然不存在使用上的問題,但是用戶感覺非常不好,也給用戶留下該研發團隊不專業或者產品粗制濫造等印象,用戶也不會使用太久或者直接卸載。
- 界面顯示不完全
APP由於功能相對簡單,但是又要給人直觀印象,所以圖片作為首選使用,尤其在首頁進行產品展示或者重要信息傳遞媒介會經常使用,但是在實際測試過程中會出現頁面加載不完善的情況,如:圖片顯示不完全,按鈕顯示錯亂,請求新頁面的內容成功返回后和原來的界面內容重疊、在編輯框輸入內容過長,向服務器提交請求返回數據和其他內容重疊等。
- 上拉刷新和下拉刷新時出現頁面加載錯誤
手機客戶端,內容超過一頁時,上拉加載更多內容,加載錯誤(容易出現數據重復,圖片和文章不匹配,圖片重復加載,文章標題和內容不一致等情況)
APP測試要點以及常見Bug分類匯總,科技改變生活, BeeTest眾測為各個移動應用測試提供最佳的眾測服務,為大家帶來更美好的移動應用體驗。