1牧抽、app安裝尝艘、升級搁进、卸載的測試點(diǎn)
1)安裝成功的情況(檢查版本號是否正確)和安裝失敗的各種情況
2)重復(fù)安裝的情況(會不會報(bào)錯(cuò))
2)升級成功的情況(檢查版本號是否正確)和升級失敗的各種情況
3)升級成功后株灸,聊天記錄一屋,瀏覽記錄等本地?cái)?shù)據(jù)不會被刪除,個(gè)人設(shè)置不會被還原
4)卸載成功的情況和卸載失敗的各種情況
【參考】app測試的安裝骑素、卸載炫乓、更新所用到的測試點(diǎn)
https://blog.csdn.net/luck_yyf/article/details/78481785
2、app功能測試點(diǎn)
界面上的菜單(鏈接):
1)能否正常打開并且結(jié)果正確
2)是否存在菜單項(xiàng)遺漏問題(導(dǎo)致用戶無法使用一些功能)
各種手勢(劃屏事件):
1)上劃的情況(加載下一屏的數(shù)據(jù))
2)下劃的情況(刷新數(shù)據(jù))
3)左劃的情況
4)右劃的情況
5)按住不放的情況
6)橫豎屏切換的情況
干擾測試:
1)收到電話的情況(比如:玩游戲的時(shí)候有電話打過來)
2)收到短信的情況
3)收到通知欄消息的情況
4)無電提示框彈出的情況
5)第三方安全軟件告警彈出的情況
6)網(wǎng)絡(luò)發(fā)生切換(從wifi切換到4G)的情況(比如:玩游戲的時(shí)候献丑,wifi斷掉了末捣,自動切換到4G的情況)
前臺后臺之間的切換以及鎖屏的情況:
1)從app里面切出來(切換到手機(jī)桌面),再切換到app里面的情況
2)進(jìn)入到app里面创橄,自動鎖屏塔粒,解鎖后,app是否會崩潰
第3方功能的調(diào)用:
1)能否發(fā)起呼叫
2)能否調(diào)用發(fā)送短信
3)能否打開攝像頭(成功的情況和失敗的各種情況筐摘,比如:沒有權(quán)限使用攝像頭)
*4)能否調(diào)用掃一掃
5)能否訪問相冊(成功的情況和失敗的各種情況卒茬,比如:沒有訪問相冊的權(quán)限)
6)能否訪問通訊錄
7)能否使用定位
8)能否調(diào)用支付寶(成功的情況和失敗的各種情況船老,比如:手機(jī)上沒有安裝支付寶)
9)能否調(diào)用微信支付(成功的情況和失敗的各種情況,比如:手機(jī)上沒有安裝微信)
10)能否使用藍(lán)牙
移動支付測試的兩個(gè)方案:
1)使用虛擬的支付平臺進(jìn)行支付測試圃酵,比如:支付寶沙箱環(huán)境柳畔、微信支付沙箱環(huán)境
2)使用真實(shí)的支付平臺進(jìn)行小額支付測試(建議先到測試的數(shù)據(jù)庫里面修改商品的單價(jià),確保訂單的支付金額比較低)
【參考】關(guān)于支付郭赐、關(guān)于安全的一些總結(jié)
https://testerhome.com/topics/9356
【參考】支付功能怎么測試
http://www.reibang.com/p/4ebb1988ca00
免登錄特性:
1)很多app提供免登錄功能薪韩,把a(bǔ)pp關(guān)掉,重新打開app時(shí)自動以上一次登錄的用戶身份來使用app
2)用戶主動退出登錄后捌锭,下次啟動APP俘陷,需要重新輸入賬號和密碼
文本輸入框的測試點(diǎn):
1)必填的字段輸入為空的情況
2)輸入的內(nèi)容過長的情況
3)輸入的內(nèi)容包含特殊字符(比如單引號,雙引號等)
4)輸入的內(nèi)容包含中文的情況
5)如果是單行文本框观谦,輸入的內(nèi)容包含換行符的情況
6)輸入的內(nèi)容是空格的情況
7)檢查不允許編輯的字段能否被修改
8)數(shù)值類型的輸入框拉盾,數(shù)值過大的情況
9)數(shù)值類型的輸入框,數(shù)值過小的情況
*10)數(shù)值類型的輸入框豁状,輸入非數(shù)值的情況
11)檢查字段的默認(rèn)值是否正確
12)能否被腳本注入
*13)是否會被屏幕鍵盤遮擋
下拉列表框的測試點(diǎn):
1)檢查默認(rèn)值是否正確
2)檢查選項(xiàng)列表是否正確(是否有遺漏捉偏,是否出現(xiàn)重復(fù))
3)如果要求單選,檢查下能同時(shí)選擇多個(gè)
4)如果選項(xiàng)很多的話泻红,應(yīng)支持搜索
日期控件的測試點(diǎn):
1)檢查默認(rèn)值是否正確
2)如果是必填項(xiàng)夭禽,輸入為空的情況
3)日期的格式不正確的情況
4)日期過大的情況
5)日期過小的情況
上傳控件的測試點(diǎn):
*1)文件類型不符合要求的情況
2)上傳的文件過大
3)上傳文件的名字過長的情況
4)上傳文件的名字包含中文的情況
*5)上傳圖片完成后,到詳情頁面檢查下圖片能否正常顯示
*6)上傳圖片完成后谊路,打開編輯頁面檢查下圖片是否正常顯示
*7)到編輯頁面重新上傳圖片讹躯,檢查顯示出來的圖片是否是最新的
8)壓縮格式的附件下載下來后,可以正常打開缠劝,并且里面的內(nèi)容是正確
9)如果上傳的是視頻的話潮梯,要檢查能否正常播放或預(yù)覽
10)如果支持批量上傳的話,批量上傳的文件過多的情況
11)上傳的文件是空文件(比如:空的記事本文件)
12)上傳腳本或者程序文件的情況(exe文件)
13)服務(wù)器上面硬盤空間不夠的情況
提交(保存)按鈕的測試點(diǎn):
1)提交成功后剩彬,檢查顯示出來的數(shù)據(jù)是否與之前輸入的數(shù)據(jù)一致(是否顯示出來的還是原來的)
2)輸入中文內(nèi)容酷麦,提交成功后矿卑,是否會出現(xiàn)中文亂碼
3)記錄修改成功后喉恋,使用更新后的值作為查詢條件,看下這條記錄能不能被搜索出來
4)重復(fù)提交的情況(連續(xù)點(diǎn)擊兩次提交按鈕)
*5)提交失敗的各種情況母廷,提示信息是否正確
*6)同時(shí)(并發(fā))提交的情況
7)網(wǎng)絡(luò)發(fā)生異常的情況
刪除按鈕的測試點(diǎn):
1)點(diǎn)擊刪除按鈕的時(shí)候轻黑,是否會彈出確認(rèn)對話框
2)單個(gè)刪除成功的情況
*3)單個(gè)刪除失敗的各種情況,提示信息是否正確
*4)批量刪除的情況
*5)重復(fù)刪除的情況
6)網(wǎng)絡(luò)發(fā)生異常的情況
界面的測試點(diǎn):
主要是檢查界面的樣式是否跟原型圖一致琴昆,涉及到的界面主要包括:
1)導(dǎo)航層氓鄙,菜單欄
2)列表頁面(刪除按鈕和確認(rèn)對話框,編輯按鈕业舍,添加按鈕)
3)詳情頁面
4)添加記錄(表單)
5)編輯記錄(表單)
6)保存成功和失敗的信息提示框
7)刪除成功和刪除失敗的信息提示框
2抖拦、app穩(wěn)定性測試
monkey工具:
測試安卓app的穩(wěn)定性(是否出現(xiàn)異常和無響應(yīng))
Exception: 異常
ANR: 無響應(yīng)
monkey命令(工具)seed選項(xiàng)的作用:
通俗一點(diǎn)說monkey測試都是一些隨機(jī)操作升酣,如果一次操作中出現(xiàn)了bug,如果要復(fù)現(xiàn)bug是比較難的,就在每次操作的時(shí)候加上一個(gè)seed值态罪,現(xiàn)在操作只要seed值是一樣的噩茄,就能幫助我們復(fù)現(xiàn)操作。
monkey命令(工具)throttle選項(xiàng)的作用:
有時(shí)候monkey的事件執(zhí)行的很快复颈,肉眼根本看不清點(diǎn)擊事件绩聘,加上throttle參數(shù)就可以控制每個(gè)事件之間的間隔時(shí)間,使執(zhí)行動作慢下來耗啦,方便我們查看凿菩。
使用monkey工具對安卓app進(jìn)行測試
monkey工具參考資料:
https://blog.csdn.net/sunny_7777/article/details/80704025
monkey使用教程:
http://www.reibang.com/p/c2aca7019ddf
http://www.reibang.com/p/b462d6defb36
3、app安全性測試的思路
app安裝包的安全性(了解):
1)開發(fā)人員打包的時(shí)候有沒有對安裝包進(jìn)行簽名
2)app程序能否被反編譯(竊取源代碼)
數(shù)據(jù)安全:
1)App本地存儲的數(shù)據(jù)和網(wǎng)絡(luò)請求數(shù)據(jù)中有沒有涉及到用戶的隱私數(shù)據(jù)帜讲。
2)檢查敏感數(shù)據(jù)是否被加密
組件安全(了解):
APP安全測試的會涉及的組件包括WebView衅谷,和android四大組件Activity、Service舒帮、Broadcast Receiver会喝、Content Provider。對于組件測試可以借用工具或第三方平臺(愛內(nèi)測)進(jìn)行測試玩郊。
SQL注入漏洞(了解):
SQL注入安全同樣借用第三方平臺(阿里云測)進(jìn)行測試肢执。
參考資料:
https://blog.csdn.net/xia_xia0919/article/details/50502224
http://www.reibang.com/p/d79a30a7ed94
登錄的測試思路:
1)根據(jù)MTOP的現(xiàn)有規(guī)則,一個(gè)帳戶只允許登錄一臺機(jī)器译红。所以预茄,需要檢查一個(gè)帳戶登錄多臺手機(jī)的情況。原手機(jī)里的用戶需要被踢出侦厚,給出友好提示耻陕。
2)軟鍵盤劫持(金融類APP登錄頁面的用戶名密碼輸入框)
3)登錄失敗的錯(cuò)誤提示消息不應(yīng)該明確告知是用戶名不存在還是密碼錯(cuò)誤,避免客戶端使用暴力破解方式刨沦。
4)對于必須要登錄成功后才能訪問的數(shù)據(jù)诗宣,如果沒有登錄就直接通過接口地址進(jìn)行訪問的情況。
5)密碼需要使用密碼強(qiáng)度策略想诅,比如必須包含大寫字母召庞,小寫字母和特殊字符,長度必須大于 8 位来破。
6)登錄失敗后的限制策略篮灼,比如連接 5 次登錄失敗,應(yīng)該暫停用戶登錄徘禁,并將該信息發(fā)送給系統(tǒng)管理員诅诱,并告知客戶端的 IP 地址。
7)登錄時(shí)應(yīng)該使用圖片驗(yàn)證碼送朱,包括后續(xù)的一些表單提交的動作娘荡,都要使用圖片驗(yàn)證碼干旁。 避免使用工具發(fā)送數(shù)據(jù)包,目前圖片驗(yàn)證碼是被證明最可靠的防攻擊手段之一炮沐。
授權(quán)的測試思路:
1)一般用戶對自己的隱私問題十分敏感疤孕,因此,我們需要對APP申請某些特定權(quán)限的必要性進(jìn)行檢查央拖,如訪問通訊錄等祭阀。對于沒有必要的權(quán)限,一般都建議開發(fā)直接移除鲜戒。
2)使用不同角色的用戶登錄系統(tǒng)专控,檢查用戶的權(quán)限范圍是否正確。
3)測試是否可以通過直接輸入接口地址的方式進(jìn)行越權(quán)調(diào)用遏餐。
4)權(quán)限的控制只能由系統(tǒng)管理員來維護(hù)伦腐,非管理員用戶不能做任何修改。
5)權(quán)限控制要細(xì)失都,最好細(xì)到增刪查改這種功能上柏蘑,并且不同模塊有不同的權(quán)限。
6)權(quán)限最好細(xì)化到數(shù)據(jù)的查看范圍
4粹庞、app性能測試的思路
app的性能分為服務(wù)器端(后臺)的性能和手機(jī)端的性能咳焚。
服務(wù)器端的性能,可以用LoadRunner或Jmeter工具進(jìn)行測試庞溜。
以Jmeter工具為例子說一下App項(xiàng)目服務(wù)器端的性能測試的思路:
1)確定app的性能測試功能點(diǎn)革半,比如,查詢流码,提交數(shù)據(jù)又官,登陸這些用戶常用的功能,一般會被選來做性能測試漫试;
2)然后六敬,根據(jù)該功能點(diǎn)的接口測試需求,或使用fiddler抓包分析請求地址和參數(shù)驾荣;
3)在jmeter上構(gòu)造向服務(wù)器發(fā)送的請求數(shù)據(jù)外构;
4)使用jmeter工具開啟多個(gè)線程(模擬很多手機(jī)設(shè)備)發(fā)送業(yè)務(wù)請求給后臺;
5)做好服務(wù)器的監(jiān)控秘车。
App項(xiàng)目手機(jī)端(客戶端)的性能測試思路:
1)我們會使用監(jiān)控工具進(jìn)行監(jiān)控
2)運(yùn)行監(jiān)控工具典勇,連接自己的手機(jī)
3)設(shè)定好運(yùn)行時(shí)長劫哼,監(jiān)控內(nèi)容(一般監(jiān)控cpu叮趴、內(nèi)存、流量权烧,電量等)
4)待運(yùn)行結(jié)束后眯亦,我們根據(jù)監(jiān)控圖伤溉,檢查CPU,內(nèi)存妻率,流量乱顾,電量是否符合性能指標(biāo)。如果不符合宫静,就把不符合指標(biāo)的報(bào)表和對應(yīng)的logcat發(fā)給開發(fā)定位走净。
5)響應(yīng)速度(app請求的響應(yīng)時(shí)間):使用fiddler工具
5、app兼容性測試的思路
1)兼容主流的操作系統(tǒng)孤里,比如:安卓8, 安卓9, 安卓10, iOS10, iOS11
2)兼容各種分辨率
【參考】如何保證APP兼容性覆蓋測試
http://www.reibang.com/p/c3ba4e3b2f0a