给我两小时,我能写很长长长长长长的APP测试用例!
大家好,我是coco小錦鯉
我又來了
我又帶著希望和愛來了
今天主要介紹APP的測試流程
APP常見測試點
以及APP常見面試題
前方高能預(yù)警
以下是一篇很長長長長長長的文
隨著科技的發(fā)展,購物、旅游、支付等日常衣食住行活動都離不開手機,由此衍生了很多APP。比如每天使用頻率非常高的微信、支付寶、微博、抖音、王者榮耀等等。APP測試主要進行功能測試、性能測試、自動化測試、安全性測試、兼容性測試、專項測試。
APP測試流程
APP測試流程與web測試流程類似,分為如下七個階段:
1.根據(jù)需求說明書編寫測試計劃;
2.制定測試方案,主要是測試任務(wù)、測試人員和測試時間的分配;
3.測試準備,包括搭建測試環(huán)境,準備測試數(shù)據(jù),確定測試方法;
4.測試用例的設(shè)計與編寫,進行用例評審及補充完善;
5.執(zhí)行測試時首先進行冒煙測試,然后對主功能流程進行測試,包括客戶端的單個功能模塊,及功能業(yè)務(wù)邏輯功能交互,回歸測試;
6.提交測試結(jié)果,包括測試用例,測試計劃;
7.日常維護性測試;
APP測試周期可根據(jù)項目的開發(fā)周期來確定測試時間,一般測試時間為兩三周,根據(jù)項目情況以及版本質(zhì)量可適當縮短或延長測試時間。
APP測試通用測試用例
注:以下為部分節(jié)選,APP完整版測試用例請在微信公眾號“ITester軟件測試小棧”后臺回復(fù)“20191003”。
登錄
登錄用戶名和密碼錯誤時,界面有提示信息
用戶主動退出登錄后,下次啟動APP時,應(yīng)該進入登錄界面
密碼更改后,登錄時是否做到了有效數(shù)據(jù)的校驗
對于未登錄狀態(tài)時,一些頁面的操作,是否做到了控制
切換賬號登錄,檢驗登錄的信息是否做到了及時更新
一個賬號只允許登錄一臺機器的軟件,需要賬號登錄多個手機時,是否將原用戶踢下線,且能夠給出提示信息
用戶登錄狀態(tài)太久,Session會過期,會出現(xiàn)“雖然是登錄狀態(tài),系統(tǒng)會提示用戶沒有登錄”
注銷 略
上傳
上傳的文件是否有格式、大小要求,上傳時間是否合適
沒有上傳資料,點擊上傳按鈕是否有提示
在點擊提交后,是否上傳成功,是否可以正常瀏覽
上傳文件后,刷新頁面,系統(tǒng)是否正常處理
上傳文件后,多次使用回退、前進,APP是否正常響應(yīng)
圖片是否支持主流的格式(jpeg,jpg,gif,png,bpm等)
音頻文件是否支持主流格式(mp3,wav等)
視頻文件是否支持主流格式(mp4,wmv,avi,mov,flv,swf等)
文檔文件是否支持主流格式(doc,docx,xlsx,xls,excel等)
壓縮包文件是否支持主流格式(zip,rar,tar,gz,7z)
是否支持單個文件上傳或批量上傳
上傳過程中網(wǎng)絡(luò)中斷,是否正常處理
文件上傳結(jié)束后,是否有提示信息并回到原來界面
下載
下載文件是否有文件大小和格式要求
導(dǎo)出全部數(shù)據(jù),數(shù)據(jù)是否準確
導(dǎo)出大量數(shù)據(jù),界面或程序是否會發(fā)生崩潰,導(dǎo)出時間是否合理
下載時同時進行其他操作是否會導(dǎo)致文件損壞
添加
輸入必填項,點添加按鈕,記錄是否成功添加
必填項內(nèi)容不填,點添加按鈕,是否有相應(yīng)提示
內(nèi)容項中輸入空格,點添加按鈕,記錄能否添加成功
僅填寫必填項,點添加按鈕,記錄能否添加成功
重復(fù)提交相同記錄,系統(tǒng)是否有相應(yīng)提示
內(nèi)容項中輸入系統(tǒng)中不允許出現(xiàn)的字符、點添加按鈕,系統(tǒng)是否有相應(yīng)提示
內(nèi)容項中輸入html,js腳本,點添加按鈕,記錄能否添加成功
新添加的記錄是否排列在首行
刪除
選擇任意一條記錄,進行刪除,能否刪除成功
選擇不連續(xù)多條記錄,進行批量刪除,能否刪除成功
選擇連續(xù)多條記錄,進行批量刪除,能否刪除成功
刪除時,系統(tǒng)是否有確認刪除的提示
查詢
默認顯示全部
單個查詢條件進行查詢,系統(tǒng)能否查詢出相關(guān)記錄
多個查詢條件,進行組合查詢,系統(tǒng)能否查詢出相關(guān)記錄
系統(tǒng)能否支持模糊查詢
查詢條件全為空時,系統(tǒng)能否查詢出相關(guān)記錄
查詢后,文本框中內(nèi)容應(yīng)保存上一次查詢的條件
查詢大量數(shù)據(jù)時,按鈕響應(yīng)是否及時
安裝
軟件安裝后是否可以正常運行
安裝過程中是否可以取消
安裝空間不足時是否有相應(yīng)提示
安裝到本地還是SD卡,是否有提供選擇路徑
是否支持第三方工具安裝
是否支持從不同的應(yīng)用市場進行下載安裝,是否可以重復(fù)安裝
卸載
是否可以通過桌面卸載或通過軟件安裝包卸載
卸載是否支持取消,單擊取消后,軟件是否正常
卸載文件后,是否刪除所有的安裝文件夾
升級
當客戶端有新版本時,是否有更新提示
當版本為非強制升級版時,用戶可以取消更新,老版本能正常使用,用戶在下次啟動App時,仍能出現(xiàn)更新提示
當版本為強制升級版時,當給出強制更新后,用戶沒有更新時退出客戶端,下次啟動App時,仍出現(xiàn)強制升級提示
在線跨版本升級后能否正常使用
升級后數(shù)據(jù)不變(登錄狀態(tài)、設(shè)置的信息、加載的資源等)
離線
應(yīng)用程序在本地客戶端會緩存一部分數(shù)據(jù)以供程序下次調(diào)用,對于一些程序,離線狀態(tài)下可以瀏覽本地數(shù)據(jù)
離線時,刷新獲取新數(shù)據(jù)時,若不能獲取新數(shù)據(jù)時,能給出友好提示
界面的數(shù)據(jù)不提供離線查看,系統(tǒng)需要給出相應(yīng)提示且界面更新后無任何數(shù)據(jù)
離線后,退出APP再開啟APP時能正常瀏覽
離線后,切換到后臺再回到APP應(yīng)用時,可以正常瀏覽
離線后,鎖頻后再解鎖回到應(yīng)用前臺,可以正常瀏覽
推送 完整版請于微信公眾號后臺回復(fù)“20191003”
交互
完整版請于微信公眾號后臺回復(fù)“20191003”
網(wǎng)絡(luò)
完整版請于微信公眾號后臺回復(fù)“20191003”
安全 權(quán)限
發(fā)送短信、撥打電話、連接網(wǎng)絡(luò),沒有網(wǎng)絡(luò)時是否有提醒
是否允許訪問相冊、拍照、錄音、定位等
UI 頁面檢查
頁面按照UI設(shè)計原型圖實現(xiàn),布局符合用戶使用習慣
恰當?shù)睦么绑w和控件的空白,以及分割線條
窗口切換、移動、改變大小時,界面顯示正常
刷新后,頁面顯示正常
不同瀏覽器下渲染出來的頁面顯示正常
不同分辨率下頁面布局顯示正常
無權(quán)限操作時按鈕置灰或不顯示,無法輸入的輸入框disable
無錯別字,或者提示性文字措詞恰當,準確
頁面顯示無亂碼
必填的控件,有必填提醒,如 *
控件(如菜單、對話框、按鈕,單選框、復(fù)選框)的布局、風格、是否正確,界面是否美觀,操作是否友好
兼容性
應(yīng)用是否可以在Android和IOS兩個平臺上兼容
是否兼容不同的Android版本如4.1.1、4.2.1、IOS版本如8.3、9.1、10、11、12
能否適配各種屏幕尺寸,Android系列如4.X、5.X,IOS系列如4英寸、4.8英寸、5.5英寸
分辨率適配:分辨率不同,界面圖標、文字大小會不同,保證主流分辨率下圖標展示完整,文字不被遮擋
Android手機和IOS手機選取市面上主流手機即可,例如:小米、華為、vivo、oppo等;ios系統(tǒng)手機就是6、6s、6plus、7、8、x、xr
專項
CPU
略
內(nèi)存
流量
耗電量
發(fā)熱量
FPS
GPU
APP測試常見面試問題
一、APP的測試資源準備有哪些?
1.IOS設(shè)備、Android設(shè)備(選取市面上主流手機產(chǎn)品);
2.支付寶/銀聯(lián)支付的項目,需要提前申請支付寶/銀聯(lián)賬戶等等;
3.有秒殺專題的題目,需要規(guī)劃秒殺時間表;
4.有優(yōu)惠券使用的項目,需要添加優(yōu)惠券數(shù)據(jù);
二、APP測試的穩(wěn)定性如何測試?
穩(wěn)定性測試這項工作是在軟件產(chǎn)品基本功能無缺陷后進行的一項測試工作,一般使軟件系統(tǒng)滿足持續(xù)運行模式,進行正常情況、臨界情況的測試,看系統(tǒng)是否有異常。一般使用Monkey工具,向系統(tǒng)發(fā)送隨機事件流,如按鍵輸入、觸摸屏輸入、手勢輸入等,實現(xiàn)對軟件的穩(wěn)定性測試。
三、APP測試與Web測試的區(qū)別?
單純從功能測試的層面上來講的話,APP 測試、web 測試在流程和功能測試上是沒有區(qū)別的。
相同點:
1.同樣的測試用例設(shè)計方法;
2.同樣的測試方法:都會依據(jù)原型圖或效果圖檢查UI;
3.測試頁面載入和翻頁的速度、登錄時長、內(nèi)存是否溢出等;
4.測試應(yīng)用系統(tǒng)的穩(wěn)定性;
不同點:
(1)系統(tǒng)結(jié)構(gòu)方面
web項目,b/s架構(gòu),基于瀏覽器的;web測試只要更新了服務(wù)器端,客戶端就會同步會更新。
app項目,c/s結(jié)構(gòu)的,必須要有客戶端;app 修改了服務(wù)端,則客戶端用戶所有核心版本都需要進行回歸測試一遍。
(2)性能方面
web項目 需監(jiān)測 響應(yīng)時間、CPU、Memory
app項目 除了監(jiān)測 響應(yīng)時間、CPU、Memory外,還需監(jiān)測 流量、電量等
(3)兼容性方面
web項目:
1. 瀏覽器(火狐、谷歌、IE等)2. 操作系統(tǒng)(Windows7、Windows10、Linux等)
app項目:
1. 設(shè)備系統(tǒng):iOS(ipad、iphone)、Android(三星、華為、聯(lián)想等) 、Windows(Win7、Win8)、OSX(Mac)
2. 手機設(shè)備可根據(jù) 手機型號、分辨率、屏幕尺寸不同
(4)相對于 Wed 項目,APP有專項測試
1. 干擾測試:中斷,來電,短信,關(guān)機,重啟等
2. 弱網(wǎng)絡(luò)測試(模擬2g、3g、4g,wifi網(wǎng)絡(luò)狀態(tài)以及丟包情況);網(wǎng)絡(luò)切換測試(網(wǎng)絡(luò)斷開后重連、3g切換到4g/wifi 等)
3. 安裝、更新、卸載,中斷、前后臺切換
安裝:需考慮安裝時的中斷、弱網(wǎng)、安裝后刪除安裝文件,全新安裝、升級安裝、第三方工具安裝等情況;
卸載:需考慮第三方工具卸載、直接卸載卸,載后是否刪除app相關(guān)的文件;
更新:分強制更新、非強制更新、增量包更新、斷點續(xù)傳、弱網(wǎng)狀態(tài)下更新;
中斷:來電中斷、短信中斷、鬧鐘中斷、手機鎖定、手機斷電、手機死機4. 界面操作:關(guān)于手機端測試,需注意手勢,橫豎屏切換,多點觸控,前后臺切換
5. 安全測試:安裝包是否可反編譯代碼、安裝包是否簽名、權(quán)限設(shè)置,例如訪問通訊錄等
6. 邊界測試:可用存儲空間少、沒有SD卡/雙SD卡、飛行模式、系統(tǒng)時間有誤、第三方依賴(QQ、微信登錄)等
7. 權(quán)限測試:設(shè)置某個App是否可以獲取該權(quán)限,例是否可訪問通訊錄、相冊、照相機等
(5)測試工具方面
自動化工具:APP 一般使用 Appium; Web 一般使用 Selenium
性能測試工具:APP 一般使用Monkey、 JMeter; Web 一般使用 LR、JMeter
四、你知道哪些APP云測平臺?
百度云測、testin云測、眾測平臺等。
五、App測試中ios和Android有哪些區(qū)別呢?
1.Android長按home鍵呼出應(yīng)用列表和切換應(yīng)用,然后右滑則終止應(yīng)用;
2.多分辨率測試,Android端20多種,ios較少;
3.手機操作系統(tǒng),Android較多,ios較少且不能降級,只能單向升級;新的ios系統(tǒng)中的資源庫不能完全兼容低版本中的ios系統(tǒng)中的應(yīng)用,低版本ios系統(tǒng)中的應(yīng)用調(diào)用了新的資源庫,會直接導(dǎo)致閃退;
4.操作習慣:Android,Back鍵是否被重寫,測試點擊Back鍵后的反饋是否正確;應(yīng)用數(shù)據(jù)從內(nèi)存移動到SD卡后能否正常運行等;
5.push測試:Android點擊home鍵,程序后臺運行時,此時接收到push,點擊后喚醒應(yīng)用,此時是否可以正確跳轉(zhuǎn);ios點擊home鍵關(guān)閉程序和屏幕鎖屏的情況(紅點的顯示);
6.安裝卸載測試:Android的下載和安裝的平臺和工具和渠道比較多,ios主要有app store,iTunes和testflight下載;
7.升級測試:可以被升級的必要條件:新舊版本具有相同的簽名;新舊版本具有相同的包名;有一個標示符區(qū)分新舊版本(如版本號);
六、APP出現(xiàn)ANR,是什么原因?qū)е碌?#xff1f;
簡單的總結(jié)有以下兩點:
1.主線程執(zhí)行了耗時操作,比如數(shù)據(jù)庫操作或網(wǎng)絡(luò)編程
2.其他進程(就是其他程序)占用CPU導(dǎo)致本進程得不到CPU時間片,比如其他進程的頻繁讀寫操作可能會導(dǎo)致這個問題。
細分的話,導(dǎo)致ANR的原因有如下幾點:
1.耗時的網(wǎng)絡(luò)訪問
2.大量的數(shù)據(jù)讀寫
3.數(shù)據(jù)庫操作
4.硬件操作(比如camera)
5.調(diào)用thread的join()方法、sleep()方法、wait()方法或者等待線程鎖的時候
6.service binder的數(shù)量達到上限
7.system server中發(fā)生WatchDog ANR
8.service忙導(dǎo)致超時無響應(yīng)
9.其他線程持有鎖,導(dǎo)致主線程等待超時
10.其它線程終止或崩潰導(dǎo)致主線程一直等待。
七、App出現(xiàn)crash原因有哪些?
和App崩潰相關(guān)的幾個因素:內(nèi)存管理錯誤,程序邏輯錯誤,設(shè)備兼容,網(wǎng)絡(luò)因素:
1.內(nèi)存管理錯誤:可能是可用內(nèi)存過低,app所需的內(nèi)存超過設(shè)備的限制,app跑不起來導(dǎo)致App crash。或是內(nèi)存泄露,程序運行的時間越長,所占用的內(nèi)存越大,最終用盡全部內(nèi)存,導(dǎo)致整個系統(tǒng)崩潰。亦或非授權(quán)的內(nèi)存位置的使用也可能會導(dǎo)致App crash。
2.程序邏輯錯誤:數(shù)組越界、堆棧溢出、并發(fā)操作、邏輯錯誤。例如,app新添加一個未經(jīng)測試的新功能,調(diào)用了一個已釋放的指針,運行的時候就會crash。
3.設(shè)備兼容:由于設(shè)備多樣性,app在不同的設(shè)備上可能會有不同的表現(xiàn)。
4.網(wǎng)絡(luò)因素:可能是網(wǎng)速欠佳,無法達到app所需的快速響應(yīng)時間,導(dǎo)致app crash。或者是不同網(wǎng)絡(luò)的切換也可能會影響app的穩(wěn)定性。
以上內(nèi)容首發(fā)于“ITester軟件測試小棧”
總結(jié)
以上是生活随笔為你收集整理的给我两小时,我能写很长长长长长长的APP测试用例!的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 带你初识计算机
- 下一篇: 计算机表格判断是否合格操作,关于一些刚开