1. 程式人生 > >App測試基本流程詳解(匯總整理

App測試基本流程詳解(匯總整理

虛擬機 上線 入侵者 通訊 span 性能 soft 下載 一次

前言

  看過許多大神對APP測試的理解,博主總結了一下我們平時測試APP應該註意的一些測試點並結合大神的理解,總結出這篇文章。

一.測試周期

  測試周期一般為兩周,根據項目情況以及版本質量可適當縮短或延長測試時間。正式測試前先向主管或產品經理確認項目排期。

二.測試資源

  2.1 產品功能需求文檔

  2.2 產品原型圖

  2.3 UI設計效果圖

  2.4 測試設備(ios、Android、Winphone7.1及以上;Symbian v3/v5/Nokia Belle(這些系統應該已經沒人用,可根據實際情況自己安排))

  2.5 測試計劃

  2.6 測試大綱/測試用例

  2.7 其他(例如有秒殺專題的項目,需要規劃秒殺時間表;有優惠券使用的項目,需要申請添加優惠券數據;支付寶/銀聯支付功能的項目,需要提前申請支付寶/銀聯賬戶等等)

三.測試要點

3.1 UI測試  

  A) 確保手頭的原型圖與效果圖為當前最新版本。

  B) 確保產品UI符合產品經理制定的原型圖與效果圖。

  C) 一切界面問題以效果圖為準,若有用戶體驗方面的建議,必須先以郵件或口頭的形式詢問產品經理。

  D)由於測試環境中的數據為模擬數據,測試時必須預先考慮到正式環境中可能出現的數據類型。

3.2 功能測試  

  根據軟件說明或用戶需求驗證App的各個功能實現,采用如下方法實現並評估功能測試過程:

    1)采用時間、地點、對象、行為和背景五元素或業務分析等方法分析、提煉App的用戶使用場景,對比說明或需求,整理出內在、外在及非功能直接相關的需求,構建測試點,並明確測試標準。
    2)根據被測功能點的特性列出相應類型的測試用例對其進行覆蓋,如:設計輸入的地方需要考慮等價、邊界、負面、異常、非法、場景回滾、關聯測試等測試類型對其進行覆蓋。     3)在測試實現的各個階段跟蹤測試實現與需求輸入的覆蓋情況,及時修正業務或需求理解錯誤。 1.運行  1)App安裝完成後的試運行,可正常打開軟件。  2)App打開測試,是否有加載狀態進度提示。  3)App頁面間的切換是否流暢,邏輯是否正確。  4)註冊
  • 用戶名密碼長度
  • 註冊後的提示頁面
  • 前臺註冊頁面和後臺的管理頁面數據是否一致
  • 註冊賬號的輸入方式——復制粘貼輸入/鍵盤輸入
  • 註冊賬號錯誤或者不合法提示語是否正確
  • 註冊賬號密碼中帶有特殊字符
  • 註冊已註冊過的賬號
  • 密碼的顯示方式(明文/暗文)
 5)登錄
  • 使用合法的用戶登錄系統
  • 系統是否允許多次非法的登錄,是否有次數限制
  • 使用已經登錄的賬號登錄系統是否正確處理
  • 用戶名、口令(密碼)錯誤或漏填時能否登陸
  • 刪除或修改後的用戶,原用戶名登陸
  • 不輸入用戶口令和重復點“確定/取消”按鈕,是否允許登錄
  • 登陸後,頁面中登錄信息
  • 頁面中有註銷按鈕
  • 登錄超時的處理
  • 正確賬號,錯誤密碼
  • 錯誤賬號,正確密碼
  • 賬號密碼為空
  • 賬號密碼含有特殊字符
  • 正確賬號,密碼大小寫輸入相反
  • 一個賬號多臺手機登錄
 2.應用的前後臺切換   1)App切換到後臺,再回到App,檢查是否停留在上一次操作界面。   2)App切換到後臺,再回到App,檢查功能及應用狀態是否正常。   3)App切換到後臺,再回到前臺時,註意程序是否崩潰,功能狀態是否正常,尤其是對於從後臺切換回前臺數據有自動更新的時候。   4)手機鎖屏解鎖後進入App註意是否會崩潰,功能狀態是否正常,尤其是對於從後臺切換回前臺數據有自動更新的時候。   5)當App使用過程中有電話進來中斷後再切換到App,功能狀態是否正常。   6)當殺掉App進程後,再開啟App,App能否正常啟動。   7)出現必須處理的提示框後,切換到後臺,再切換回來,檢查提示框是否還存在,有時候會出現應用自動跳過提示框的缺陷。   8)對於有數據交換的頁面,每個頁面都必須要進行前後臺切換、鎖屏的測試,這種頁面最容易出現崩潰。  3.免登陸   很多應用提供免登陸功能,當應用開啟時自動以上一次登錄的用戶身份來使用App。   1)考慮無網絡情況時能否正常進入免登錄狀態。   2)切換用戶登陸後,要校驗用戶登錄信息以及數據內容是否相應更新,確保原用戶退出。   3)根據Mtop的現有規則,一個賬戶只允許登陸一臺機器。所以,需要檢查一個賬戶登錄多臺手機的情況。原手機裏的用戶需要被退出,給出友好提示。   4)密碼更換後,檢查有數據交換時是否進行了有效身份的校驗。   5)支持自動登錄的應用在進行數據校驗時,檢查系統是否能自動登錄成功並且數據操作無誤。   6)檢查用戶主動退出登錄後,下次啟動App,應停留在登錄界面。  4.離線瀏覽   很多應用會支持離線瀏覽,即在本地客戶端會緩存一部分數據供用戶查看。   1)在無線網絡情況可以瀏覽本地數據。   2)退出App再開啟App時能正常瀏覽。   3)切換到後臺再回到前臺可以正常瀏覽。   4)鎖屏後再解鎖回到應用前臺可以正常瀏覽。   5)在對服務器段的數據有更新時回給予離線的相應提示。  5.App更新   1)當客戶端有新版本時,有更新提示。   2)當版本為非強制升級版時,用戶可以取消更新,老版本能正常使用。用戶在下次啟動App時,仍出現更新提示。   3)當版本為強制升級版時,但給出強制更新後用戶沒有做更新時,退出客戶端。下次啟動App時,仍出現強制升級提示。   4)當客戶端有新版本時,在本地不刪除客戶端的情況下,直接更新檢查是否能正常更新。   5)當客戶端有新版本時,在本地不刪除客戶端的情況下,檢查更新後的客戶端功能是否是新版本。   6)當客戶端有新版本時,在本地不刪除客戶端的情況下,檢查資源同名文件如圖片是否能正常更新成最新版本。如果以上無法更新成功的,也都屬於缺陷。  6.定位、照相機服務   1)App有用到相機,定位服務時,需要註意系統版本差異。   2)有用到照相機服務的地方,需要進行前後臺的切換測試,檢查應用是否正常。   3)測試照相機服務時,需要采用真機進行測試。  7.PUSH測試   1)檢查Push消息是否按照指定的業務規則發送。   2)檢查不接收推送消息時,用戶不會在接收到Push消息。   3)如果用戶設置了免打擾的時間段,檢查在免打擾時間段內,用戶接收不到Push。在非免打擾時間段內,用戶能正常收到Push。   4)當Push消息是針對登錄用戶的時候,需要檢查收到的Push與用戶身份是否相符,沒有錯誤的將其他人的消息推送過來。一般情況下,只對手機上最後一個登錄用戶進行消息推送。   5)測試Push時,需要采用真機進行測試。

3.3 安裝卸載測試

  驗證App是否能正確安裝、運行、卸載、以及操作過程和操作前後對系統資源的使用情況

 1.安裝   1)軟件安裝後是否能夠正常運行,安裝後的文件夾以及文件是否寫到了指定的目錄裏。   2)軟件安裝各個選項的組合是否符合概要設計說明。   3)軟件安裝向導的UI測試   4)安裝後沒有生成多余的目錄結構和文件。  2.卸載   1)測試系統直接卸載程序是否有提示信息。   2)測試卸載後文件是否全部刪除所有的安裝文件夾。   3)卸載是否支持取消功能,單擊取消後軟件卸載的情況。   4)系統直接卸載UI測試,是否有卸載狀態進度條提示。

3.4 兼容測試

  A) 確保軟件在所有兼容機型上都能正常使用(ios一般需要兼容7或者6, ios5可以不用考慮,用戶使用率已經低於5%以下)

  B) 對於低端性能兼容機上獨有的問題(例如ios5以下、Android1.6以下),若在技術上難以修改或者由於排期的原因無法在短時間內改進,必須在測試日報中註明,並得到技術平臺主管、產品經理以及運營人員的確認,最好以郵件的形式得到確認)

3.5 性能測試

  1)響應能力測試:測試App中的各類操作是否滿足用戶響應時間要求。

  • App安裝、卸載的響應時間
  • App各類功能性操作的響應時間
  2)壓力測試,反復/長期操作下,系統資源是否占用異常。
  • App反復進行安裝卸載,檢查系統資源是否正常
  • 其他功能反復進行操作,檢查系統資源是否正常

3.6 交叉事件測試

  針對智能終端應用的服務等級劃分方式及實時特性所提出的測試方法。交叉測試又叫事件或沖突測試,是指一個功能正在執行過程中,同時另外一個事件或操作對該過程進行幹擾的測試。如:App在前/後臺運行狀態時與來電、文件下載、音樂收聽等關鍵運用的交互情況測試等。

  交叉事件測試非常重要,能發現很多應用中潛在的性能問題。   1)多個App同時運行是否影響正常功能。   2)App運行時前/後臺切換是否影響正常功能。   3)App運行時撥打/接聽電話。   4)App運行時發送/接收信息。   5)App運行時發送/收取郵件。   6)App運行時瀏覽網絡。   7)App運行時使用藍牙傳送/接收數據。   8)App運行時使用相機、計算器等手機自帶設備。

3.7 回歸測試

  A)軟件最終上線前,需對產品進行回歸測試,測試內容包含之前所有的測試項目

  B)回歸測試不再對細節進行測試,而是類似於對產品進行驗收,從客戶正常使用的角度對產品進行再一輪的整體測試。

  C)只有在回歸測試通過之後,才對產品進行提交。

3.8 安全測試

1.安裝卸載安全測試

  1)應用程序應能正確安裝到設備驅動程序上

  2)能夠在安裝設備驅動程序上找到應用程序的相應圖標   3)安裝路徑應能指定   4)沒有用戶的允許,應用程序不能預先設定自動啟動   5)卸載是否安全,其安裝進去的文件是否全部卸載   6)卸載用戶使用過程中產生的文件是否有提示   7)其修改的配置信息是否復原   8)卸載是否影響其他軟件的功能   9)卸載應該移除所有的文件

2.數據安全性

  1)當將密碼或其它的敏感數據輸入到應用程序時,其不會被存儲在設備中,同時密碼也不會被解碼。

  2)輸入的密碼將不以明文形式進行顯示。   3)密碼、信用卡明細或其他的敏感數據將不被存儲在它們預輸入的位置上。   4)不同的應用程序的個人身份證顯示長度必須至少在4-8個數字長度之間,密碼暗文顯示。   5)當應用程序處理信用卡明細或其它的敏感數據時,不以明文形式將數據寫到其他單獨的文件或者臨時文件中。以防止應用程序異常終止而又沒有刪除它的臨時文件,文件可能遭受入侵者的襲擊,然後讀取這些數據信息。   6)當建立敏感數據輸入到應用程序時,其不會被存儲在設備中。   7)應用程序應考慮或者虛擬機器產生的用戶提示信息或安全警告   8)應用程序不能忽略系統或者虛擬機器產生的用戶提示信息或安全警告,更不能在安全警告顯示前,利用顯示誤導信息欺騙用戶,應用程序不應該模擬進行安全警告誤導用戶。   9)在數據刪除之前,應用程序應當通知用戶或者應用程序提供一個“取消”命令的操作。   10)應用程序應當能夠處理當不允許應用軟件連接到個人信息管理的情況。   11)當進行讀或寫用戶信息操作時,應用程序將會向用戶發送一個操作錯誤的提示信息。   12)在沒有用戶明確許可的前提下不損壞、刪除個人信息管理應用程序中的任何內容。   13)如果數據庫中重要的數據正要被重寫,應及時告知用戶。   14)能合理的處理出現的錯誤。   15)意外情況下應提示用戶。

3.通訊安全性

  1)在運行軟件過程中,如果有來電、SMS、藍牙等通訊或充電時,是否能暫停程序,優先處理通信,並在處理完畢後能正常恢復軟件,繼續其原來的功能。

  2)當創立連接時,應用程序能夠處理因為網絡連接中斷,進而告訴用戶連接中斷的情況。   3)應能處理通訊延時或中斷。   4)應用程序將保持工作到通訊超時,進而給用戶一個錯誤信息指示有鏈接錯誤。   5)應能處理網絡異常和及時將異常情況通報用戶。   6)應用程序關閉網絡連接不再使用時應及時關閉,斷開。

四. 提交測試報告

  根據自己的測試結果,輸出一份測試報告,郵箱發給相應的負責人。

App測試基本流程詳解(匯總整理