除去每一個產品和版本不一樣的業務需求以及功能,針對於大多數的APP的共同點和移動設備的特性,本文總結了一些APP功能測試中常常碰見,須要考慮到的測試點以共參考數據庫
1、安裝和卸載服務器
應用的安裝和卸載在任何一款APP中都屬於最基本功能。一旦出錯,就屬於優先級爲緊要Critical的權限。所以APP的安裝和卸載應做爲一個測試點多加劇視。主要關注如下幾個方面:微信
▲應用是否能夠正常安裝(命令行安裝;豌豆莢/手機助手等第三方軟件安裝;apk/ipa安裝包安裝)
▲應用是否能夠在iOS和Android不一樣系統,版本,機型上進行安裝(有的系統版本太低,應用不能適配)
▲安裝過程當中是否能暫停,再次點擊,是否能繼續安裝
▲安裝空間不足時如何表現,是否有相應提示,提示是否友好
▲安裝過程當中斷網或網絡不穩定的狀況下,是否有相應提示,以及網絡恢復後是否能繼續安裝
▲是否能夠正常刪除應用(桌面刪除;第三方軟件刪除;命令行刪除)
▲應用卸載後全部的安裝文件夾是否所有刪除
▲卸載過程當中出現死機,斷電,重啓等意外的狀況,待環境恢復後是否能夠繼續正常卸載
▲卸載是否支持取消功能,單擊取消後軟件卸載狀況是否正常網絡
2、運行測試
(1)軟件安裝後須要檢查應用是否能正常運行:
(2)APP安裝完成後,是否能夠正常打開,穩定運行
(3)APP的速度是可讓人接受,切換是否流暢
(4)網絡異常時,應用是否會崩潰:在請求超時的狀況下,若是程序邏輯處理的很差,就有可能發生Crash。(好比黃油相機APPV4.8.2.8版本,在無網絡狀態下,進入照片編輯頁面,選擇並拖動照片時,會發生閃退)加密
3、註冊和登陸命令行
用戶註冊和登陸功能是不少APP產品最基礎的構成之一,而主流的登陸頁面大體分爲三種:進程
(1)帳號密碼註冊登陸;ip
(2)手機號註冊登陸;內存
(3)第三方受權登陸。
本文針對前兩種註冊登陸方式進行闡述:
3.1帳號密碼註冊登陸
▲輸入正確的帳號密碼,可正常註冊和登陸
▲已註冊用戶再次註冊
▲未註冊用戶嘗試登陸
▲密碼「****」展現
▲帳號輸入框對最大長度和格式應有校驗(好比郵箱帳號須要郵箱格式等)
▲帳號或密碼輸入錯誤時建議提示「帳號或密碼錯誤」,而不是「帳號錯誤」或「密碼錯誤」
▲密碼是否加密傳輸(可抓取請求查看)
▲密碼更改後,登陸時是否作到了有效數據的校驗:修改前的密碼失效;
▲未登陸時對一些頁面的操做,是否作了控制
▲切換帳號登陸,檢驗登陸的信息是否作到及時更新
▲對於多個端都進行操做時,確保數據庫操做無誤,且每一個端能夠及時看到數據的更新
多設備同時登陸同一賬號時(iOS+iOS,Android+Android,iOS+Android),檢查是否將原用戶剔除,彈出異地登陸提示,且對一些須要登陸後才能使用的頁面無操做權限。
3.2手機號註冊登陸
▲手機號輸入框格式校驗檢查
▲驗證短信的接收是否及時;
▲用驗證碼可正常登陸;
▲驗證碼錯誤時,登陸失敗+友好提示
▲驗證短信文案是否符合所測APP;
▲重複發送驗證碼,前一個驗證碼正常失效
▲頻繁操做驗證碼發送,應有操做限制
▲驗證碼有效期校驗(超過有效期沒法登陸)
4、日曆控件
▲目前不少包含購票功能的APP中都會設置日曆控件方便選票,那麼對日曆控件的測試咱們須要關注哪些呢?
▲月份和日期對應(好比2月有28天,7月31天)
▲閏年2月,應有29天
▲跨年時,年份應有增長。
5、權限設置
當前不少APP的使用依賴於位置,通知,網絡等用戶權限,例如杭州公交APP,在首次啓動時會詢問用戶是否贊成啓用定位,通知,網絡權限。針對用戶權限,咱們能夠多關注如下幾點:
▲首次啓動APP詢問是否贊成啓用權限
▲消息權限開啓時,消息推送是否正常接收(iOS系統應用啓用和後臺關閉時都應該能夠收到;Android系統在後臺關閉進程後就不會推送)
▲消息權限關閉後,APP客戶端接收不到消息推送。
▲位置權限開啓時,APP可定位到當前位置(好比杭州公交APP,能自動定位到用戶當前位置,展現出附近的公交站)
▲位置權限關閉後,APP需定位纔可用的功能,是否有提示引導用戶開啓權限,好比「請打開系統設置中’隱私-定位服務’,容許「XXXX」使用您的位置」。
▲網絡權限關閉時,APP是否有提示(「服務器或網絡錯誤,請稍後重試」),是否有提示引導用戶開啓權限。
6、軟件更新
▲強制更新(APP開啓後要求必須更新,不然沒法使用APP):1.屢次關閉和打開APP後是否正常跳出更新彈窗,且沒法關閉;2.點擊更新是否正確跳轉至後臺配置的更新頁面;
▲非強制更新(只提示一次更新):1.可正常關閉更新彈窗。2.重啓APP更新提示按照需求再次顯示,或者再也不顯示;3.點擊更新是否正確跳轉至後臺配置的更新頁面;
▲取消版本更新時,老版本能夠正常使用;
▲APP更新後版本號應有更新;
▲APP更新後新增功能和老功能可正常使用。
▲當有新版本時,不刪除客戶端的狀況下,直接更新是否成功;
▲刪除APP後更新
7、網絡環境
▲3G,4G,wifi 網絡環境下應用的各功能可正常運行;
▲網絡異常時 ,數據交換失敗是否會有提醒;
▲有網到無網再到有網環境時,數據是否能夠自動恢復,正常加載;
▲只容許內網訪問的APP,在鏈接到外網時是否有友好提示。
8、兼容性測試
▲儘可能覆蓋該產品的主要用戶(建議選取產品本身的數據,具體技術方案能夠採起APP內部埋點的方法。若是是新發布的產品,能夠選取競品類產品的數據)
▲從不一樣系統,版本,分辨率,機型(不一樣廠家ROM)等緯度進行適配測試
▲一般選擇在少數主流設備上執行全向的用例,在其餘兼容性範圍內的設備上覆蓋主要功能的測試用例;
▲關注各功能界面在不一樣分辨率下是否存在UI展現問題(若是代碼沒有對不一樣分辨率作適配處理,就可能會出現錯位,遮擋,留白,拉伸和模糊等問題)
▲基於UI自動化腳本的雲測試方案(基於輕量級的UI自動化腳本,以及藉助雲平臺大量的真機資源)
9、異常測試
▲沒有內存空間時,APP可否正確響應;
▲橫豎屏切換展現;
▲APP運行時網絡中斷;
▲反覆操做某個功能(通常是比較重要的功能),不斷點擊和刷新,是否會出現閃退;
▲APP運行時接入電話,短信,微信,或其餘消息
因爲移動互聯網的應用太多,更新頻繁,不管如何不是我的經驗所能覆蓋徹底的。以上幾點,僅從做者測試過的APP進行總結,僅爲APP應用測試新人提供思考方向。但願看完本文,您對於移動應用的測試多了一些瞭解。