老師給的硬核移動端測試面試題目,大家看看靠譜嗎

以后我把各崗位的題目更新個遍,當然大部分都是我自己總結的保證質量哈

ADB工作原理

  • 當用戶啟動一個adb客戶端,客戶端首先確認是否已有一個adb服務進程在運行。如果沒有,則啟動服務進程。當服務器運行, adb服務器就會綁定本地的TCP端口5037并監聽adb客戶端發來的命令,所有的adb客戶端都是用端口 5037與adb服務器進行對話的。
  • 接著服務器將所有運行中的模擬器或設備實例建立連接。它通過掃描所有5555到5585范圍內的奇數端口來定位所有的模擬器或設備。一旦服務器找到了adb守護程序,它將建立一個到該端口的連接。請注意任何設備和模擬器實例會取得兩個連接的端口,一個偶數端口用來控制與控制臺的連接,和一個奇數端口用來控制與adb連接。

?

ADB 的使用

    • 顯示當前運行的虛擬設備:adb devices
    • 查看adb所支持的所有命令:adb –help
    • 查看adb的版本序列號:adb version?????
    • 進入模擬器的shell模式:adb shell

?

  1. 如何重啟 adb服務

關閉server:adb kill-server

重啟server:adb start-server

  1. APP的安裝與卸載

在模擬器安裝軟件:adb install –r? *.apk

在模擬器卸載軟件:adb uninstall ?包名

?

adb install? –r? *.apk

    • 只連接一個設備
    • adb  install  安裝包路徑
    • 連接多個設備,需要指定一個設備
    • adb? –s 設備序列號 install 安裝包路徑
    • 覆蓋安裝,保留數據
    • adb? –s 設備序列號 install? -r 安裝包路徑

例:adb -s 192.168.56.101:5555? install? - r? E:/test.apk

?

  1. 如何在電腦與手機之間傳輸數據?
    1. 向模擬器中傳輸文件:adb push

例如:adb push D:\demo\meituan.apk? /data/local/meituan.apk

    1. 從模擬器中獲取文件:adb pull

例如: adb pull /data/local/meituan.apk D:\

  1. 如何靜默安裝APP

adb push D:\demo\meituan.apk? /data/local/meituan.apk

adb shell pm? install –f? /data/local/meituan.apk

?

  1. 如何使用adb啟動停止一個app?

adb shell am start –W –S package/activity

adb shell am force-stop package

  1. 如何獲取CPU、內存狀態

adb shell? dumpsys meminfo? packagename

adb shell? dumpsys cpuinfo |findstr ?packagename

?

?

?

?

App開發方式有三種

Native App 、Web App、Hybird App

?

?

monkey

  1. monkeyt進行壓力測試的命令?

?

adb shell? monkey –p? < packagename >? <count>

  1. 如何重現Crash/ANR過程?

添加參數 –s? seed

?

3、請對下列monkey命令進行解釋(需要解釋各參數的含義)。

adb? shell monkey -p com.example.think.helloworld --pct-touch ?20 --pct-motion? 30 --throttle? 300 --ignore-crashes --ignore-timeouts --ignore-security-exceptions --ignore-native-crashes --monitor-native-crashes? -v -v? -v 1000 > D:/monkey2.log

參考答案

?

  1. -p com.example.think.helloworld 1000對這個包com.example.think.helloworld進行穩定性測試,發送1000次隨機事件
  2. --pct-touch ?20 ?其中設定觸屏的事件占比為20%
  3. --pct-motion? 30滑動事件占30%
  4. --throttle? 300每次間隔事件為300毫秒
  5. --ignore-crashes Monkey會執行完所有的事件,不會因crash而停止
  6. --ignore-timeouts 忽略超時
  7. --ignore-security-exceptions忽略安全異常
  8. --ignore-native-crashes忽略本地異常
  9. --monitor-native-crashes監視系統中本地代碼發生的崩潰
  10. -v -v? -v ?日志詳細等級,3個v代表最詳細等級的日志
  11. D:/monkey2.log D:/monkey2.log:代表將產生的日志,放到本地PC的D盤,并命名為:monkey2.log

?

客戶端性能測試需要關注哪些方面?

CPU,內存,流量、電量以及客戶端在不同網絡環境下響應速度等等。

如何使用Fiddler抓取HTTPS包

Fiddler https相關設置

在瀏覽器中安裝證書

APP兼容性測試需要考慮哪些因素?

  • 系統版本(android&ios平臺,不同版本)
  • 分辨率(小屏、大屏、全屏)
  • 手機品牌(華為、小米OPPO、VIVO等)

WAP 頁面兼容性測試有哪些因素?

  • 不同平臺的不同瀏覽器(safari、chrome等)
  • 分辨率(小屏、大屏、全屏)
  • 轉發到QQ、微信、微博等第三方平臺

?

調試App相關的bug常用哪些工具?

  • 網絡相關工具,fiddle、wareshark、charles
  • adb、am、logcat等
  • 云平臺,bug復現

?

調試Web頁面常用哪些工具?

  • Chrome調試工具,可設置移動APP UA
  • WEINRE (WEb INspector REmote)

服務器端壓力測試工具有哪些?

LoadRunner

JMeter

自主研發的工具

服務器端壓力測試需要監控哪些指標?

CPU

內存(虛擬內容、實際內存)

QPS、平均響應時間

?

?

?

簡述開展服務器端壓力測試的步驟

?

  1. 搭建服務端模塊,啟動服務
  2. 實施大量并發的測試場景
  3. 監控進程相關指標、內存、CPU
  4. 監控模塊的執行情況,QPS、平均響應時間
  5. 收集數據并進行分析,生成曲線圖
  6. 根據分析結果,得出測試結論

簡述什么是持續性集成

  • 持續集成是指開發階段,對項目進行持續性
  • 自動化編譯、測試,以達到控制代碼質量的手段
  • 持續集成是一種軟件開發實踐

?

持續集成都包含哪些內容?

  • 開發人員、版本控制
  • CI服務器、構建腳本
  • 反饋機制、集成構建

持續集成的意義有哪些?

  • 減少風險、減少重復過程
  • 任何時間、任何地點生成可部署的軟件
  • 增加項目可見性、建立團隊對產品的信心

android的四大組件是什么?并對android的四大組件的功能進行描述。

?

1)Activity,Service,BroadcastReceiver,ContentProvider

2)Activity是會顯示視圖控制組件的用戶接口,并對事件作出響應, Activity是Android應用程序的最基本的組件。Android應用程序中一個單獨的屏幕通常就是一個Activity。

Service是具有一個較長生命周期且沒有用戶界面的程序,只能在后臺運行,可以和其他組件進行交互。

BroadcastReceiver用戶用來接收應用或系統中的廣播,并作出響應。

?

Content Provider使一個應用程序的指定數據集提供給其他應用程序。其他應用可以通過ContentResolver類從該內容提供者中獲取或存入數據。

?

?

騰訊的GT是什么工具?

參考答案

GT(隨身調)是APP的隨身調測平臺,它是直接運行在手機上的“集成調測環境”(。利用GT,僅憑一部手機,無需連接電腦,您即可對APP進行快速的性能測試(CPU、內存、流量、電量、幀率/流暢度等等)。

請列舉出交互性測試的測試要點

  • 客戶端作為手機特性測試,包含被打擾的情況,來電,來短信,低電量測試等
  1. 使用應用時對來電的處理
  2. 使用應用時對短信息的處理
  3. 使用應用時鬧鈴響起
  4. 使用應用時鎖屏、解鎖
  5. 待機、插拔數據線、耳機不會影響客戶端

請列舉出Android的功能測試點

答出任意五點

  1. 安裝\卸載(本機+第三方)
    App具體功能點
  2. 聯網(默認的聯網方式是什么?Wifi or Sim卡?網絡切換是否有相應的提示說明?)
  3. 程序進入輸入功能時,是否正常彈出鍵盤;鍵盤是否遮擋了應用需要輸入內容的對話框
  4. app切換測試(最小化、多個app切換, home和程序間多次切換 )
  5. 關機、待機后app能否正常使用
    返回上一級操作,退出程序后的提示
  6. 當離開測試應用一段時間后,在回到測試應用時不能丟失用戶數據
    衡屏豎屏切換時不能丟失用戶數據
  7. 長按某一按鈕是否會觸發其他事件
  8. 注意PC端和APP的數據同步(比如某作者在PC端設置了禁止他人評論,那么在APP上也應該禁止)
  9. 如果在APP中內嵌了些超鏈接后,程序如何處理。如果調用設備的瀏覽器,能否正常切回到APP
  10. 各個頁面間多次切換
  11. 權限的限制(拍照、語音、藍牙)
  12. 互動分享:如果程序里面包括分享功能,那么檢測點擊分享的時候是否會正常給出分享提示,點擊分享后所填寫的分享內容是否正確
  13. 長時間開機且開app,看是否會出現異常情況

Android應用程序結構是什么?

參考答案:Linux Kernel(Linux內核)Libraries(系統運行庫或者是c/c++核心庫)Application? Framework(開發框架包)Applications(核心應用程序)

?

?

請對Appium進行簡要的介紹。

Appium是一個開源、跨平臺的測試框架,可以用來測試原生,移動Web及混合的移動端應用,支持ios,android平臺的測試。

Appium使用WebDriver的json wire協議,來驅動Apple系統的UIAutomation庫, Android 系統的UIAutomator框架。

PO框架設計思路,需要包含哪些包,實現哪些功能。

base里面有個BaseTest.java,這個類的主要作用是啟動和關閉APP的作用

pages存放頁面元素類,每一個java類,都是一個頁面,存放的都是對應頁面的所有元素及操作

testcases存放測試用例的地方,在這個包下,還會有很多子包,子包的個數根據測試的系統的模塊來劃分,比如有登錄模塊,首頁模塊等,那么子包的名字就應該寫成login、home

utils封裝了各種工具類,包括讀取excel,appium api封裝類,讀取數據庫類,讀取屬性文件類和生成driver的類等。

Android Service兩種啟動方式的區別

1、采用start的方式開啟服務

特點:如果服務已經開啟,不會重復的執行onCreate(), 而是會調用onStartCommand()。服務停止的時候調用?onDestory()。服務只會被停止一次。一旦服務開啟跟調用者(開啟者)就沒有任何關系了。開啟者退出了,開啟者掛了,服務還在后臺長期的運行。
開啟者不能調用服務里面的方法。

2、采用bind的方式開啟服務

?bind的方式開啟服務,綁定服務,調用者掛了,服務也會跟著掛掉。綁定者可以調用服務里面的方法。

請敘述Appium的四大設計理念

  • 不需要為了自動化,而且重新編譯或修改測試app
  • 不必局限于某種語言或者框架來編寫和運行測試腳本的運行
  • 一個移動自動化的框架不應該在接口上重復造輪子
  • 移動端自動化測試應該是開源的

?

Appium架構原理

(1)Appium服務器。Appium服務器是Appium框架的核心。它是一個基于Node.js實現的HTTP服務器。Appium服務器的主要功能是接受從Appium客戶端發起的連接,監聽從客戶端發送來的命令,將命令發送給bootstrap.jar(iOS手機為bootstrap.js)執行,并將命令的執行結果通過HTTP應答反饋給Appium客戶端。

(2)Bootstrap.jar。Bootstrap.jar是在Android手機上運行的一個應用程序,它在手機上扮演TCP服務器的角色。當Appium服務器需要運行命令時,Appium服務器會與Bootstrap.jar建立TCP通信,并把命令發送給Bootstrap.jar;Bootstrap.jar負責運行測試命令。

(3)Appium客戶端。它主要是指實現了Appium功能的WebDriver協議的客戶端Library,它負責與Appium服務器建立連接,并將測試腳本的指令發送到Appium服務器。現有的客戶端Library有多種語言的實現,包括Ruby、Python、Java、JavaScript(Node.js)、Object C、PHP和C#。Appium的測試是在這些Library的基礎上進行開發的。

啟動/關閉Service的代碼實現

?

??? public void start(View v){

??????? Intent intent =new Intent(this,MyService.class);

??????? startService(intent);

??? }

?

??? public void stop(View v){

??????? Intent intent =new Intent(this,MyService.class);

??????? stopService(intent);

?

}

請列舉出交互性測試的測試要點。

客戶端作為手機特性測試,包含被打擾的情況,來電,來短信,低電量測試等

    1. 使用應用時對來電的處理
    2. 使用應用時對短信息的處理
    3. 使用應用時鬧鈴響起
    4. 使用應用時鎖屏、解鎖
    5. 待機、插拔數據線、耳機不會影響客戶端

安裝、卸載測試主要針對編譯后源程序生成的APK安裝文件

1)驗證app能否正確安裝運行卸載,以及操作過程和操作前后對系統資源的占有情況

2)安裝運行卸載的提示,報告等

3)檢查安裝路徑,文件是否合理,組件是否正確注冊等

  • 驗證數字簽名
  • 升級后可以正常使用
  • 在線跨版本升級

異常測試

  • 在斷網、斷電、服務器異常等情況下,客戶端能否正常處理,保證數據的正確性。
    • 使用應用時斷網
    • 斷網時啟動應用
    • 使用應用時斷電
    • 服務器異常,客戶端能否正常處理
    • Client端更新時斷開了
    • Client端更新時Service端掛了

業務邏輯測試點需要考慮哪些因素?

?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/443969.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/443969.shtml
英文地址,請注明出處:http://en.pswp.cn/news/443969.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

兔子,撒幣

作為最硬核的你兔老大&#xff0c;我狠起來連自己都罵 一、原力第一 哈哈當然不是罵自己啦哈哈&#xff0c;其實是最近csdn出了一個活動&#xff1a;原力計劃s3&#xff0c;弄得我現在整天想著&#xff0c;給你們發錢。發書。發資料。 對&#xff0c;就是這個玩意&#xff1a…

超硬核!數據庫學霸筆記,考試/面試隨便秒殺

廢話不多說&#xff0c;上干貨是兔老大的傳統了&#xff0c;收藏就完事了。 目錄 數據庫系統概論 四個基本概念 數據模型 數據庫系統結構 數據庫系統模式的概念 數據庫系統的三級模式結構 數據庫的二級映像功能與數據的獨立性 數據庫系統的組成 關系 關系模式 關系數…

一個神奇的大學科目《軟件工程》,知識點總結+測試題,包你不掛科

誰能告訴我這科的理論在哪可以實用呀&#xff1f;搞不懂&#xff0c;只能收藏一下包不掛科 知識點總結 第一章&#xff1a; 軟件工程定義&#xff1a; 1968年10月&#xff0c;Fritz Bauer 首次提出了“軟件工程”的概念&#xff0c;并將“軟件工程”定義為&#xff1a;為了經…

Toad for Oracle9.7中導入數據庫以后,數據有中文亂碼:

昨天&#xff0c;在阿里云服務器上安裝了Oracle10g的數據庫后&#xff0c;又安裝了Toad for Oracle9.7工具&#xff0c;之后導入數據后發現數據的中文是亂碼&#xff0c;最后經過多方查找&#xff0c;終于解決了&#xff0c;現在總結一下&#xff0c;以供后來的人查看。 一&am…

騰訊面試Android必問11題,我說的,不信就來看看

眾所周知兔子啥都會那么一點&#xff0c;不收藏等著干啥呢 1、是否使用過本地廣播&#xff0c;和全局廣播有什么差別&#xff1f; 引入本地廣播的機制是為了解決安全性的問題&#xff1a; 正在發送的廣播不會脫離應用程序&#xff0c;比用擔心app的數據泄露&#xff1b;其他的…

超硬核!我統計了BAT筆試面試出現頻率最高的五道題,學會了總能碰到一道

所以說不要怕算法&#xff0c;簡單的題反而出現的頻率最高&#xff0c;不一定非要寫個幾百道才面試 兩數之和 給定一個整數數組 nums 和一個目標值 target&#xff0c;請你在該數組中找出和為目標值的那 兩個 整數&#xff0c;并返回他們的數組下標。 你可以假設每種輸入只會…

不騙你,全網首創的超硬核的萬字SQL題

因為上次發了數據庫原理總結&#xff0c;瀏覽快上萬了&#xff0c;所以把我總結的題目 也送給大家 上次的數據庫原理總結 一&#xff0e;根據員工工資計算其個人所得稅&#xff0c;3000元為起征點&#xff0c;超出3000元的部分按照10%的比例征收個人所得稅&#xff0c;例如&…

學姐面了美團阿里京東的面經

很真實的經歷&#xff0c;美團阿里京東全都嘗試過。希望對你們都有幫助 近一個多月 斷斷續續參加了一些校園秋季招聘&#xff0c;仍未上岸。 記錄近段時間的反思共享。 &#xff08;時間順序&#xff09; 【美團基礎研發部門-測試開發崗(功能測試&#xff0c;測試平臺研發&a…

學姐騰訊產品面經

順利拿到sp offer&#xff0c;不服不行&#xff0c;不是這塊料呀 系列文章歷史&#xff1a; 朋友面神策數據庫&#xff0c;第五個問題不會&#xff0c;直接再見 美女學姐面了美團阿里京東&#xff0c;這些經驗實在太真實了 首先&#xff0c;來個背景介紹&#xff1a; 騰訊實…

關于阿里云服務器本地訪問不了的問題

一&#xff1a;前幾天公司購買了一臺阿里云服務器&#xff0c;讓我把之前的項目都移到阿里云服務器上&#xff0c;我為此專門的研究了一下阿里云服務器的基本操作和安裝流程&#xff0c;這里我說一下我們公司的服務器配置如下&#xff1a; 系統就配置就是這個情況&#xff0c;下…

超硬核!十萬字c++題,讓你秒殺老師和面試官(上)

我發現呀&#xff0c;這大家對面試題的需求還是很大的&#xff0c;這里總結了上千道知識點&#xff0c;能換您一個收藏嗎 C 引用和指針的區別&#xff1f; 指針是一個實體&#xff0c;需要分配內存空間。引用只是變量的別名&#xff0c;不需要分配內存空間。 引用在定義的時候…

當年,學姐把這份Java總結給我,讓我在22k的校招王者局亂殺

可以說&#xff0c;學姐給我的這份文檔真的把我的知識查漏補缺&#xff0c;面試問到了好多&#xff0c;值得收藏。 并發編程 一.Executor 為什么使用線程池&#xff1a;手動創建線程耗費性能&#xff0c;不利于管理。 首先創建線程池有兩種方式&#xff1a;使用Executors工廠…

十萬字cpp成神總結-看完月薪25k

最近會放出cpp成神之路的所有總結&#xff0c;大家感興趣的可以收藏一波。 歷史文章&#xff1a; 超硬核&#xff01;十萬字c題&#xff0c;讓你秒殺老師和面試官 位運算 若一個數m滿足 m 2^n;那么k%mk&(m-1) 為什么內存對齊 平臺原因(移植原因)不是所有的硬件平臺都能…

測試必經之路(探索性測試)

接下來&#xff0c;百萬年薪測試方面也會有專題哦。 測試計劃&#xff1a; 測試范圍、方法、資源、進度、風險 測試報告&#xff1a; 就是把測試的過程和結果寫成文檔&#xff0c;對發現的問題和缺陷進行分析。 一、探索性測試 評估測試用例的標準 1 測試用例對被測對象的…

超硬核萬字!web前端學霸筆記,學完就去找工作吧

近期應粉絲要求&#xff0c;出多個前端大總結&#xff0c;適合小白復習查閱 #第一章 Web基礎知識 Web開發基本概念 1、萬維網是一個由許多相互鏈接的超文本組成的系統&#xff0c;通過互聯網訪問。 2、web&#xff1a;worldwideweb&#xff0c;萬維網&#xff0c;簡稱web&…

金額轉換,阿拉伯數字的金額轉換成中國傳統的形式如:(¥1011)-(一千零一拾一元整)輸出。...

程序代碼如下&#xff1a; package cn.itcast.framework.interview;import java.text.NumberFormat; import java.util.HashMap;//金額轉換&#xff0c;阿拉伯數字的金額轉換成中國傳統的形式如&#xff1a;&#xff08;&#xffe5;1011&#xff09;&#xff0d;>&#xff…

大學四年自學進BAT,私下存的資源/工具/網站我全貢獻出來了

這些工具/網站是我橫掃BAT的重要一步&#xff0c;甚至是決定性的一步。以后會更簡歷書寫、面試筆試、大學學習、工具等文章。 大學四年&#xff0c;上課是不可能一直上課的&#xff0c;看課本也是不可能一直看課本的。 不是說老師教的不好&#xff0c;教材寫的不好&#xff0c…

我是CSDN最硬核作者,誰贊成,誰反對?

也許是現在&#xff0c;也許是未來&#xff0c;我是全網最硬核的作者&#xff0c;最值得愛學習愛編程的崽崽們關注的作者。 一、介紹自己 哈嘍大家好&#xff0c;我是兔老大&#xff0c;之前叫過兔兔兔兔兔兔、兔兔RabbitMQ等&#xff0c;反正都是兔子啦&#xff0c;自從大學…

當年,學姐總結奇安信18k常問面試題

她確實拿了18k&#xff0c;真人真事&#xff0c;也不是很高&#xff0c;我沒必要編。 黑色字為問題&#xff0c;紅色字為答案&#xff0c;空行為一個面試過程 自我介紹 家在哪&#xff0c;工作地 測試需要掌握啥 V模型W模型 最典型的V模型版本一般會在其開始部分對軟件開發…

最強阿里巴巴歷年經典面試題匯總:C++研發崗

這個系列計劃收集幾百份朋友和讀者的面經&#xff0c;作者合集方便查看&#xff0c;各位有面經屯著可以聯系我哦 本系列歷史文章&#xff1a; 關于我的那些面經——百度后端&#xff08;附答案&#xff09; 《關于我的那些面經》滴滴Java崗&#xff08;附答案&#xff09; 朋…