1.1安裝與卸載測試
1)軟件安裝后是否可以正常運行
2)安裝過程中是否可以取消
3)安裝空間不足時是否有相應提示
4)是否可以卸載應用(可通過桌面卸載,也可以通過軟件卸載安裝。曾發現在ios手機上有個應用安裝時未完全安裝,終止安裝后,未完成安裝的應用圖標一直顯示在手機上,並且無法成功刪除)
5)卸載是否支持取消功能額,單擊取消后軟件卸載功能是否正常---不可逆
6)卸載后文件是否全部刪除所有的安裝文件夾
7)安裝到本地還是sd卡,有選項可以提供
8)安裝完自動刪除安裝包
9)從不同的應用市場下載進行安裝?---安卓端
10)重復安裝
1.2軟件升級測試
1)當客戶端有新版本時,是否更新提示;
2)當版本為非強制升級版時,用戶可以取消更新,老版本能正常使用,用戶在下次啟動app時,仍能出現更新提示;
3)當版本為強制升級版時,當給出強制更新后用戶沒有做更新時,退出客戶端,下次啟動app時,仍出現強制升級提示。
4)檢查更新后各個功能是否能正常使用
5)在線跨版本升級后能否正常使用
版本升級會升級什么內容?
- 修復bug
- 開發新功能
- 優化
1.3登錄測試
1)登錄用戶名和密碼錯誤時,界面有提示信息---Toast
2)用戶主動退出登錄后,下次啟動app時,應該進入登錄界面
3)密碼更改后,登錄時是否做到了有效數據的檢驗。
4)對於未登錄狀態時,一些頁面的操作,是否做了控制
5)切換賬號登錄,檢驗登錄的信息是否做到及時更新
6)對於多個端(web、ios、android等)進行操作時,確保數據庫操作無誤,且每個端可以及時看到數據的更新
7)一個賬號只允許登錄一台機器的軟件,需要賬號登錄多個手機時,是否將原用戶踢下線,且能給給出提示信息---單點登錄
8)用戶登錄狀態太久,sessionid會過期,會出現“雖然是登錄狀態,系統會提示用戶沒有登錄”---sessionis—會話
1.4離線測試
是應用程序在本地客戶端會緩存一部分數據以供程序下次調用,對於一些程序,離線狀態下可以瀏覽本地數據。
1) 對於離線(無網絡)時,刷新獲取新數據時,不能獲取數據時能給出友好提示
2) 對於外界的數據不提供離線察看,需要給出相應提示且界面更新后無任何數據
3) 離線下,退出app再開啟app時能正常瀏覽
4) 離線下,切換到后台再切回app應用時可以正常瀏覽
5) 離線下,鎖屏后再解鎖回到應用前台可以正常瀏覽
1.5ui測試
1)確保產品ui符合產品經理制定的原型圖與ui設計效果圖/切圖
2)一般設計界面(如菜單、對話框、窗口和其他可視控件)布局、風格、文字是否正確,頁面是否美觀,操作是否友好
3)如:安裝app后的加載頁顯示,分享頁面的產品logo顯示
1.6兼容性測試
APP測試大部分都是兼容測試
分辨率越高越耗電
版本可以從5.0測起
1) 應用是否可以在不同操作系統正常使用,如果開發有Android和iOS兩個平台的軟件,那么在這兩個平台都要做兼容測試。如Android版本有5.1 6…8,iOS版本有7.1.2、8.3、9.1、10等;
2) 能否適配各種屏幕尺寸。
Android系列:4.x、5.x市場占有率最高
iOS系列:iphone:3.5英寸、4英寸、4.8英寸、5.5英寸
3) 分辨率適配
分辨率 不同,界面圖標,文字大小會不同。保證主流分辨率下圖標展示完整,文字不被遮擋。
一般測試兼容性想Android系統手機,選取市面上主流手機就行。例如:小米,華為,vivo,oppo等,ios系統手機就是5、6、6s、6plus、7
1.7安全性測試—權限測試
1)扣費風險:包括發送短信、撥打電話、連接網絡、沒有網絡時能否提醒
例如當網絡狀況很差的時候,用戶在支付界面的多次確認操作必須只能被執行一次。
2)隱私泄露風險:包括訪問手機信息,訪問聯系人信息等
3)是否允許訪問相冊,拍照
4)是否允許錄音
5)是否允許定位
6)是否允許接收通知推送
一般對於大多數非支付類App來說,安全並不是一個特別大的問題,只需要保證登錄鑒權的安全性既可。
1.8消息推送測試
1)默認開關應該是全打開狀態
2)設置開關可以自由打開關閉,設置開關關閉時,客戶端接收不到消息推送
3)未鎖屏時,應用后台運行,消息推送是否可正常接收
4)手機消息欄是否可以接收到消息提醒。且點擊可查看。點擊后消息欄消失。
5)當push消息是針對登錄用戶的時候,需要檢查收到的push與用戶身份是否相符,沒有錯誤地將其他人的消息推送過來
6)Push推送消息是是否能有針對性的推送,如相應內容推送給相應用戶(精准推送)
7)退出登錄后,是否接收push推送(根據需求來)
1.9前后台切換測試
1)app切換到后台,在回到app,檢查是否停留在上一次操作界面;檢查功能及應用狀態是否正常;程序是否崩潰,功能狀態是否正常,尤其是對於從后台切換回前台數據有自動更新的時候
2)手機鎖屏解屏后進入app注意是否會崩潰,功能狀態是否正常
3)當app使用過程中有電話進來中斷后再切換到app,功能狀態是否正常
4)當關閉app進程后,再開啟app,app能否正常啟動。
對於有數據交換的頁面,每個頁面都必需要進行前后台切換,鎖屏,網絡切換,app切換,電話切換,斷電切換等中斷的測試,這種頁面最容易出現崩潰
1.10異常中斷測試
1)交互異常性測試:客戶端作為手機特性測試,包括被打擾的情況:如來電、來短信、低電量測試等,還要注意手機端硬件上,如:待機,插拔數據線,耳機等操作不會影響客戶端
2)異常性測試:主要包含了斷網、斷電等情況下,客戶端能否正常處理,保證數據正確性。
1.11網絡環境測試
1)測試3G、4G、wifi,有網/無網/弱網情況下應用的運行
2)網絡不好時(弱網),提交數據是否一致處理提交中,是否會有延遲,數據交換失敗是否會有提醒。
3)有網到無網再到有網環境時,數據是否可以自動恢復,正常加載(網絡中斷重連)
4)無網絡時,各種提示信息是否友好,數據本地化是否正確(比如提示當前已斷開網絡請檢查網絡設置;還有從wifi環境切換到4G環境提示是否啟用4G網絡,會產生扣費)
1.12性能測試
1)響應能力測試(例如:loadrunner/jmeter工具)
App安裝、卸載的響應時間
App各類功能性操作的響應時間(后台服務器的性能)
2)壓力穩定性測試(例如:monkey)
App反復進行安裝卸載
其他功能反復進行操作
3)app性能監控
cpu的占用
內存的占用
流量的耗用
電流的耗用
專門的性能測試小工具,例如GT、Instrunments、emmage(Android)、還有OneApm這種平台可以
2.一些關於APP測試的問題
1)APP的測試資源准備?
IOS設備、Android設備(選取市面上主流手機產品),支付寶/銀聯支付的項目,需要提前申請支付寶/銀聯賬戶等等。有秒殺專題的題目,需要規划秒殺時間表;有優惠劵使用的項目,需要添加優惠券數據;
2)APP測試的穩定性?
了解什么是穩定性,這項工作一般是在軟件產品基本功能無缺陷后進行的一項測試工作,一般使軟件系統滿足持續運行模式,進行正常情況,臨界情況的測試,看系統是否有異常。
一般使用monkey工具,向系統發送隨機事件流,如按鍵輸入,手勢輸入等,實現對軟件的穩定性測試。
3)APP測試與web測試的區別?
相同點:
同樣的測試用例設計方法;
同樣的測試方法;都會依據原型圖或者效果圖檢查UI;
測試頁面載入和翻頁的速度、登錄時長、內存是否溢出等;
測試應用系統的穩定性
不同點:
App的中斷測試:來電中斷、短信中斷、藍牙、鬧鍾、插拔數據線、手機鎖定、手機斷電、手機問題(系統死機重啟)
App的安裝卸載:全新安裝、升級安裝、第三方工具安裝、第三方工具卸載、直接刪除卸載、消息推送測試、手機授權測試、前后台切換、網絡環境(wifi/2G/3G/4G/無網絡)
兼容性測試:web項目考慮不同瀏覽器的兼容;app需要考慮手機不同操作系統、不同機型、不同屏幕等。
Web自動化測試工具較常用QTP,而手機自動化monkey、monkeyrunner、appium