天天看點

APP測試面試題快問快答(一)

作者:正厚IT教育訓練中心

1.請問App測試的主要内容包含?

功能測試:

業務邏輯正确性測試:依據産品文檔->測試用例編寫。

界面的測試

界面測試:依據産品UI設計文檔(高保真圖,原型圖)。

更新,安裝,解除安裝測試:

  1. 更新測試:臨近版本更新(1.0->1.1);跨版本(1.0->....->2.2)
  2. 安裝測試:首次安裝;覆寫安裝(同版本,不同版本覆寫);解除安裝後安裝。
  3. 解除安裝測試:首次解除安裝;解除安裝安裝後再解除安裝。

相容性測試:

  1. 系統版本:Android:官方版本,定制版本;IOS:官方提供版本。
  2. 手機品牌和型号:華為,vivo,小米等。
  3. 分辨率:720 * 1280 1080* 1920。
  4. 網絡情況:2g 3g 4g 5g Wi-Fi。
  5. 自身軟體的相容性
  6. 與其他常用軟體的相容性

異常測試:

  1. 熱啟動應用:應用在背景長時間待機;應用在背景待機過程中,手機重新開機。
  2. 網絡切換和中斷恢複。
  3. 電話資訊中斷恢複。

性能測試

  1. 安裝和啟動時間
  2. CPU的占用
  3. 記憶體的占用
  4. 流量的耗用
  5. 電量的耗用
  6. FPS
  7. 後端, 測試App中的各類操作是否滿足使用者響應時間要求,主要是測試點在網速方面,2g,3g,wifi, 4g一定要覆寫到
  8. 後端 有網絡并發

安全性測試

  1. 對App的輸入有效性校驗、認證、授權、敏感資料存儲、資料加密等方面進行檢測,以期發現潛在的安全問題;
  2. 從資料的本地存儲到資料的傳輸、處理以及遠端通路等各個環節,基于相應的安全标準/行業标準評估App的安全特性;
  3. 檢測App的使用者授權級别,資料洩漏,非法授權通路等;
  4. 借鑒在Web App和網絡安全測試的一些成功經驗在智能終端App測試中進行裁減或适配;
  5. 基于各種通信協定或相應的行業安全标準檢視App是否滿足相應的要求。

健壯性測試:

  1. 在各種邊界壓力情況下(如電池、存儲、網速等),驗證App是否能正确響應
  2. 反複/長期操作下,系統資源是否占用異常;Android 可是使用adb指令
  3. 壓力測試主要集中在後端,前端的壓力測試目前測的較少

2.App閃退的原因有哪些?

考察點:移動app測試的過程中是否遇到閃退情況

原因有很多,舉例:

1.緩存垃圾太多,Android系統的特性,如果長時間不清理垃圾檔案,會導緻越來越卡,甚至閃退。

2.運作程式太多,導緻記憶體不足。

3.應用版本相容問題,分辨率相容問題。

4.APP的SDK與手機系統不相容。

5.系統更新後,新版本不相容老版本的API,傳回對象失敗,報空指針。

6.軟體權限未開放。

3.App測試的實時日志如何擷取?

考察點:是否有移動app測試的日志擷取相關經驗

一般可以通過以下方式擷取:

1.可以使用adb指令:adb logcat | find "com.sankuai.meituan" >d:\test.txt

2.用ddms抓取,手機連上電腦,打開ddms工具;

3.在Android Studio開發工具中擷取,打開ddms工具;

4.用monitor工具擷取,手機連上電腦,打開monitor工具

4.常用的adb指令有哪些?

考察點:是否有移動app測試的相關指令的操作經驗

擷取裝置清單及裝置狀态:adb devices,adb-getstat,adb get-serialno

安裝應用:

adb install 路徑\xx.apk, 安裝應用;

adb install -r 重新安裝

adb shell pm install 安裝

adb shell pm install -r

3. 解除安裝應用:adb uninstall <包名>, adb shell pm uninstall <包名>,後面的參數是應用的包名,差別于 apk 檔案名adb uninstall

将 Android 裝置上的檔案或者檔案夾下載下傳到電腦本地:adb pull <遠端路徑> <本地路徑>adb pull複制 Sdcard 下的 pull.txt 檔案到 D 盤:adb pull sdcard/pull.txt d:\rename.txt

上傳本地檔案至 Android 裝置:adb push <本地路徑> <遠端路徑>

eg: adb push推送 D 盤下的 ITester.txt 至 Sdcard:adb push d:\ITester.txt sdcard/ (注意sdcard 後面的斜杠不能少)

6. 結束和啟動adb服務:adb kill-server /adb start-server , 結束 adb 服務/啟動 adb 服務,

通常兩個指令一起用,裝置狀态異常時使用 kill-server,運作 start-server 進行重新開機服務。adb kill-server adb start-server

列印及清除系統日志:adb logcat列印 Android 的系統日志adb logcat -c

5.講一下安卓 SDK中自帶工具的功能

考察點:是否熟悉Android SDK工具及使用實際相關經驗

ddms:Dalvik Debug Monitor Service,是 Android 開發環境中的Dalvik[虛拟機]調試監控服務。

monkey:Android中的一個指令行工具,可以運作在模拟器裡或實際裝置中。它向系統發送僞随機的使用者事件流(如按鍵輸入、觸摸屏輸入、手勢輸入等),實作對正在開發的應用程式進行壓力測試。

uiautomator:是Eclipse自帶的用于UI自動化測試工具,可仿真APP上的單擊、滑動、輸入文本等操作。

monitor:同uiautomator,包含ddms工具的相關功能

adb:ADB的全稱為Android Debug Bridge,是一種debug工具。

monkeyrunner: monkeyrunner是一個Android自動化測試工具。它提供一個API,運用該API編寫的程式可以不用通過Android代碼來直接控制Android裝置和模拟器,我們可以寫一個Python程式對android應用程式或測試包進行安裝,運作,發送模拟擊鍵,對使用者界面進行截圖并将截圖存儲在workstation上等操作。

APP測試面試題快問快答(一)

繼續閱讀