1.Android APP 內(nèi)存不足時,如何獲得內(nèi)存? 系統(tǒng)優(yōu)先結(jié)束被掛起(暫停)的進程,釋放內(nèi)存。 2.APP 測試常見問題有哪些?原因有哪些? 常見的有 crash、ANR(應用無響應、卡死),一般由設(shè)備碎...
1.Android APP 內(nèi)存不足時,如何獲得內(nèi)存?
系統(tǒng)優(yōu)先結(jié)束被掛起(暫停)的進程,釋放內(nèi)存。
2.APP 測試常見問題有哪些?原因有哪些?
常見的有 crash、ANR(應用無響應、卡死),一般由設(shè)備碎片化、網(wǎng)絡(luò)波動大、內(nèi)存泄漏、代碼編寫錯誤。
3.APP 自動化測試工具
開放性問題,帶點主觀意見:
對比其他熟悉的自動化工具的優(yōu)缺點;自動化的簡要方案(簡要的同時關(guān)鍵內(nèi)容請具體)。4.Android 與 web 測試區(qū)別?
相同點:
設(shè)計測試用例均依據(jù)等價類、邊界值等方法,測試原理相同;大多數(shù)都采用黑盒測試方法來驗證業(yè)務(wù)功能;需要檢查界面布局、風格和按鈕是否美觀、統(tǒng)一等(UI 測試);測試頁面載入和翻頁的速度、登錄時長是否溢出等問題(性能測試);測試應用系統(tǒng)的穩(wěn)定性。不同點:
手機作為通信工具,通信等一些行為會對 APP 產(chǎn)生(中斷測試);手機用戶對 app 產(chǎn)品的安裝卸載操作:從上一版本/上兩個版本直接升級到最新版本(安裝卸載測試);web 自動化測試使用的工具較常用的是 selenium,而 android 手機自動化測試比較常用的自動化工具是 monkey、monkeyrunner、Appium(測試工具不一樣)。5.app 測試有哪幾種環(huán)境?
本地環(huán)境:app 安裝的手機環(huán)境和電腦搭建的自動化測試環(huán)境(比如安卓 SDK 等);服務(wù)器環(huán)境:war 包部署的服務(wù)器,服務(wù)器可以通過瀏覽器訪問6.簡單介紹一下 Android SDK 的安裝步驟
下載 jdk 和安卓 sdk;安裝 jdk,配置環(huán)境變量(java_home、classpath、 path)。7.介紹移動應用及其服務(wù)端的測試點?
移動應用主要有權(quán)限、安裝運行卸載、UI、功能、性能、中斷、兼容性、安全性、 回歸、升級更新、用戶體驗(app 的 11 大測試點);服務(wù)端有接口測試、性能測試、安全測試。8.如何判斷 bug 是客戶端還是后臺問題?
這個要根據(jù)業(yè)務(wù)來,一般數(shù)據(jù)的問題前端的問題多些,一般做法是有問題提給前端開發(fā), 他們知道是他們自己的問題還是后臺返回的數(shù)據(jù)問題。
9.安卓中如何取出日志信息
把安卓系統(tǒng)日志信息實時導入到本地:adb logcat -v time > d:\mylog.log;運行使用某個 app,實時獲取該 app 的日志信息(cmd 里面的返回信息) :adb shell monkey -p com.android.calendar -v 1000 > d:\mylog2.log。10.常見的 adb 命令
查看當前連接的設(shè)備:adb devices;安裝軟件:adb install 路徑\xx.apk;卸載軟件:adb uninstall <包名>;從電腦上發(fā)送文件到設(shè)備:adb push <本地路徑> <遠程路徑> adb push C:\test1.txt /sdcard/;從設(shè)備上下載文件到電腦:adb pull <遠程路徑> <本地路徑> adb pull /sdcard/test1.txt D:實時獲取日志:adb logcat -v time > D:\mylog.log;登錄終端設(shè)備 shell:adb shell;查找包名/活動名:adb logcat | findstr START (腳本中, cmp= 后面的值就是 包名/activity 名稱);啟動 APP 啟動;adb shell am start -n packageName/activity;關(guān)閉 app 語法:adb shell am force-stop 包名;監(jiān)控 APP 啟動時間 adb shell am start -W packageName/activity;Monkey 命令:adb shell monkey -v -p mypackage 5011.APP 這么多主流機型如何測試
我手機型號分別有魅族,華為,小米,iphone7、iphone8 、iphone8plus 、iphone x 測試兼容性,有些沒有的機型,先借用同事的手機進行測試,同時申請公司購買,或者采 用云真機。
12.App 崩潰(閃退)原因
緩存垃圾過多:由于安卓系統(tǒng)的特性如果長時間不清理垃圾文件,會導致越來越卡也會出現(xiàn)閃退情況,運行的程序過多導致內(nèi)存不足。
應用版本兼容問題:如果應用版本太低,會導致不兼容,造成閃退。此外,有些新版本 在調(diào)試中,也會造成應用閃退。
解決方法:如果是版本太舊,更新為新版本即可;如果是新版本閃退, 可能是應用在改版調(diào)試,可卸載后安裝舊版。檢查 APP 中訪問網(wǎng)絡(luò)的地方,組件中的 ImageView 是否可以正常的下載并顯示到 app 頁面上。檢查 APP 的 sdk 和手機的系統(tǒng)是否兼容。在一些特定情況下的閃退,比如播放視頻,在 Android5.0 升級到 Android6.0 的時候, 有些系統(tǒng) API 老版本有,新版本沒有,到時回去對象的時候失敗,報空,系統(tǒng)就會出現(xiàn)閃退。
13.Appium 都有哪些啟動方式
客戶端啟動;命令行啟動。14.安卓 UI 自動化測試工具
appium:是一個移動端的自動化框架,可用于測試原生應用,移動網(wǎng)頁應用 和混合型應用,且是跨平臺的。
robotium:是一款國外的 Android 自動化測試框架,主要針對 Android 平臺的應用進行黑盒自動化測試,它提供了模擬各種手勢操作(點擊、長按、滑動等)、查找和斷言機制的 API,能夠?qū)Ω鞣N控件進行操作。
15.Android 手機和 IOS 系統(tǒng)區(qū)別
兩者運行機制不同:IOS 采用的是沙盒運行機制,安卓采用的是虛擬機運行機制。
兩者后臺制度不同:IOS 任何第三方程序都不能在后臺運行;安卓中任何程序都 能在后臺運行,直到?jīng)]有內(nèi)存才會關(guān)閉。
IOS 中用于 UI 指令權(quán)限最高,安卓中數(shù)據(jù)處理指令權(quán)限最高。