① 如何測試app軟體測試在手機中的使用情況
手機app測試主要有以下:
1.安全測試
1)軟體許可權
-扣費風險:包括發送簡訊、撥打電話、連接網路等 -隱私泄露風險:包括訪問手機信息、訪問聯系人信息等 -新增風險項
2)開發者官方許可權列表信息比對分析 2.安裝、運行、卸載測試
驗證App是否能正確安裝、運行、卸載,以及操作過程和操作前後對系統資源的使用情況,主要包括:
1)檢測軟體是否能正確安裝、運行、卸載; 2)安裝、卸載、更新錯誤報告; 3)其他輔助信息: -位置和文件夾是否合理; -組件是否正確注冊或刪除;
-評估操作前後,CPU、Memory(內存佔用)、Storage(磁碟佔用)等系統資源的使用情況。 3.UI測試
測試用戶界面(如菜單、對話框、窗口和其它可視控制項)布局、風格是否滿足客戶要求,文字是否正確,頁面是否美觀,文字,圖片組合是否完美,操作是否友好等。
UI測試的目標是確保用戶界面會通過測試對象的功能來為用戶提供相應的訪問或瀏覽功能。確保用戶界面符合公司或行業的標准。包括用戶友好性、人性化、易操作性測試。 4.功能測試
根據軟體說明或用戶需求驗證App的各個功能實現,採用如下方法實現並評估功能測試過程:
1)採用時間、地點、對象、行為和背景五元素或業務分析等方法分析、提煉App的用戶使用場景,對比說明或需求,整理出內在、外在及非功能直接相關的需求,構建測試點,並明確測試標准(若用戶需求中無明確標准遵循,則需要參考行業或相關國際標准或規則)。 2)根據被測功能點的特性列舉出相應類型的測試用例對其進行覆蓋,如:涉及輸入的地方需要考慮等價、邊界、負面、異常或非法、場景回滾、關聯測試等測試類型對其進行覆蓋。 3)在測試實現的各個階段跟蹤測試實現與需求輸入的覆蓋情況,及時修正業務或需求理解錯誤。 5.性能測試
評估App的時間和空間特性
1)極限測試:在各種邊界壓力情況下(如電池、存儲、網速等),驗證App是否能正確響應。
2)響應能力測試:測試App中的各類操作是否滿足用戶響應時間要求 3)壓力測試:反復/長期操作下,系統資源是否佔用異常; 4)性能評估:評估典型用戶應用場景下,系統資源的使用情況。
5)Benchmark測試(基線測試):與競爭產品的Benchmarking,產品演變對比測試等。 6.中斷測試
針對智能終端應用的服務等級劃分方式及實時特性所提出的測試方法,如:App在前/後台運行狀態時與來電、文件下載、音樂收聽等關鍵運用的交互情況測試等。 7.兼容測試
主要測試內部和外部兼容性,包括:
與本地及主流App是否兼容; 檢驗在各種網路連接下(WiFi、GSM、GPRS、EDGE、WCDMA、CDMA1x、CDMA2000、HSPDA等),App的數據和運用是否正確;
與各種設備是否兼容(若有跨系統支持則需要檢驗是否在各系統下,各種行為是否一致)。
8.安全測試
安全測試顯得尤為重要,粗心、不謹慎的數據存儲或傳輸方式使得非法、惡意目的有可乘之機。
智能終端安全涉及各信息交互、存儲接點,借鑒於網路傳輸和相關安全測試經驗,App安全測試大概劃分為以下幾類:
1)從數據的本地存儲到數據的傳輸、處理以及遠程訪問等各個環節,基於相應的安全標准/行業標准評估App的安全特性;
2)借鑒在Web App和網路安全測試的一些成功經驗在智能終端App測試中進行裁減或適配;
3)檢測App的用戶授權級別,數據泄漏,非法授權訪問等;
4)對App的輸入有效性校驗、認證、授權、敏感數據存儲、數據加密等方面進行檢測,以期發現潛在的安全問題;
5)基於各種通信協議或相應的行業安全標准檢視App是否滿足相應的要求
② 手機軟體測試的基本流程
手機軟體測試的基本流程:
1、需求分析階段:閱讀需求,理解需求,分析需求點,參與需求評審會議。
2、測試計劃階段:主要任務就是編寫測試計劃,參考軟體需求規格說明書,項目總體計劃,內容包括測試范圍,進度安排,人力物力分配,整體測試策略的制定。
3、編寫測試用例:適當的了解設計,搭建測試用例框架,根據需求和設計編寫測試用例。
4、測試執行階段:搭建環境准備數據,執行預測試然後進入正式測試(系統測試、回歸測試、交叉測試、自由測試),bug管理直到測試結束。
5、輸出測試報告:輸出測試報告,確認是否可以上線。
(2)手機軟體測試教程擴展閱讀
軟體測試方法
1、動態測試
計算機動態測試的主要目的為檢測軟體運行中出現的問題,較靜態測試方式相比,其被稱為動態的原因即為其測試方式主要依賴程序的運用,主要為檢測軟體中動態行為是否缺失、軟體運行效果是否良好。
2、黑盒測試
黑盒測試,顧名思義即為將軟體測試環境模擬為不可見的「黑盒」。通過數據輸入觀察數據輸出,檢查軟體內部功能是否正常。測試展開時,數據輸入軟體中,等待數據輸出。數據輸出時若與預計數據一致,則證明該軟體通過測試。
3、白盒測試
白盒測試相對於黑盒測試而言具有一定透明性,原理為根據軟體內部應用、源代碼等對產品內部工作過程進行調試。
測試過程中常將其與軟體內部結構協同展開分析,最大優點即為其能夠有效解決軟體內部應用程序出現的問題,測試過程中常將其與黑盒測試方式結合,當測試軟體功能較多時,白盒測試法亦可對此類情況展開有效調試。
③ 軟體測試教程之手機軟體測試方法
第一:兼容性測試
針對App通常會考慮這些方面:
1)操作系統版本
包括Andoird版本,iOS版本
2)屏幕解析度
android 800*480, 960*640,1280*720(720p),1920*1080(1080p),2560*1440(2k).
對於iOS,考慮最近幾代機型對應的解析度即可.
3)不同廠家的ROM
不同廠家的ROM,大多廠家都對android 系統進行拿旅了定製、實際中會遇到例如調用相機和底層服務出現的不兼容問題以及搖一搖遇到的不同手機對於方向和重力感測器靈敏度設置不同的問題.
4) 網路類型
網路類型通常考慮wifi,2g,3g4g下的功能情況。另外針對m版網站考慮不同瀏覽器類型和屏幕解析度.
第二:流量測試
在移動產品的測試中,很有必要對App使用的流量進行度量,大致來說,流量可以從用戶使用的的相關性角度分為:一類是用戶的操作直接導致的流量消耗;另一類是後台,即在用戶沒有直接使用情況下的流量消耗。
流量的測試方法:
1. 基於系統自帶功能.
eg android proc/uid_stat/{uid} /tcp_send
android proc/uid_stat/{uid} /tcp_rcv
2. 通過API或者系統埋點來獲取數據。
3. 通用的流量測試方法:手機抓包,或者wifi代理(Fiddler, Charles)。
常見的流量節省方法:
1. 數據壓縮。
壓縮包含介面文本數據的壓縮,js文件的壓縮及圖片的壓縮。
2. 不同數據格式的採用
例如採用JSON格式作為介面數據返回格式通常比XML格式要小。
3. 控制訪問的頻次
這個主要針對後台數據上報,PUSH消息檢查等定時機制的。
4. 只獲取必要的數據
有時候APP一頁的內容非常多,而用戶可能只會看一部分,過多的從後台拉去數據就是浪費,所以可以採用分屏載入或者懶載入的方式來減少流量消耗。
5. 緩存
可將圖穗枝片,js等數據暫存起來,但由於手機存儲空間有限,也需要控制整個緩存大小,並給用戶提供清理緩存的選項。
6. 針對不同網路類型設計不同的訪問策略
有些APP不同的網路類型返回的內容不一樣。
第三:電量測試
消族凳在電器電池技術沒有取得巨大突破前提下,這方面始終會存在一些瓶頸,如果一些App架構設計的不好,或者代碼偶缺陷,就可能導致電量消耗比較高,所以電量測試也是很重要的。
工具 GSam Battery Monitor Pro.
第四:弱網路測試
移動互聯網產品相比PC互聯網產品,有一個特點是前者使用的網路比較多樣,除了Wif之外,很多時候是在移動網路下使用的,移動網路遇到的情況又比較復雜,比如地鐵、隧道、 體育 場等。所以網路不穩定的情況是比較容易發生的,很多情況下App的一些問題是在復雜的網路情況下才會暴露,與其讓用戶發現和投訴這些問題,不如我們在測試階段盡量模擬這樣的網路情況,及早發現和修復這些問題。
工具:
1. Windows下的Network Delay Simulator
2. Mac下的Network Link Conditioner
第五:穩定性測試
在保證基本功能正確基礎之上,App的穩定性就顯得非常重要,如果一個App經常出現閃退或者卡死,那麼用戶體驗就會受到很大傷害,在有其他競爭產品的情況下很容易造成用戶的流失。
第六:安全測試
包括安裝包的安全測試(能否反編譯代碼、安裝包是否簽名,完整性校驗,許可權設置檢查等)。
敏感信息測試(資料庫,日誌,配置文件)。
軟鍵盤劫持(金融類APP登錄頁面的用戶名密碼輸入框)、
賬戶安全(密碼是否明文,密碼傳輸是否加密,賬戶輸入錯誤次數過多鎖定,同時會話提醒, 注銷機制)
數據通信安全(關鍵數據是否散列或加密,關鍵連接是否使用安全通信,是否對數字證書合法性進行驗證,是否校驗數據合法性。
組件安全測試。
伺服器端介面測試(SQL注入測試、XSS跨站腳本攻擊, CSRF跨站請求偽造,越權訪問等)。
第七:環境相關的測試
在實際項目中,有一些缺陷我發現是和App所處的運行環境相關的,所以設計測試的時候,要多考慮這些場景,比如:
1)干擾測試
收到電話、收到簡訊、收到通知欄消息、無電提示框彈出、第三方安全軟體告警彈出。
2)許可權測試
一些用戶在實際使用App的時候回有意識阻止某些功能。例如有的用戶感覺讓某個App訪問電話本或者相冊可能泄漏隱私,就在手機中設置了禁止了該App訪問相冊的許可權。
3)邊界測試
手機環境本身也有其邊界情況需要在測試中覆蓋。常見的場景有:
可用存儲空間過少、沒有SD卡/雙SD卡、飛行模式、系統時間有誤(晚於和早於標准時間)、第三方依賴(比如我們的App依賴第三方App,但是現在第三方App沒有安裝或者版本過低的測試情況)。
4)Android定位測試
用白盒方式模擬