我只想找個功能測試,面試官卻把我逼上了絕境……結果順利通過!

現在的測試都需要會用8種語言來寫Hello World!測試開發的等級也分的越來越細。所謂"點點點"的功能測試員,是否沒有出路?我就是一個功能測試,工作內容包括"點點點",但得知道從哪裡入手點點點,和藉助什麼工具。

我只想找個功能測試,面試官卻把我逼上了絕境……結果順利通過!

很多公司面試人都是:面試造火箭,工作擰螺絲。作為一線大廠,我遇到的面試官並沒有遇到過這個情況。我很幸運的沒有被"虐",也順利入職了一座偉大的公司。下面說一下面試過程。在敘述面試過程中,我會結合入職後工作的一些工作內容。

我是通過內推面試了2個組。第一個組沒有通過。因為當時還不會代碼,所以對於測開的職位,肯定是沒辦法通過了。第2個組是招聘T4以下的功能測試,又是內推,內推的兩位同事在組內也能說得上話,於是我得到了這次面試機會。

上來先做了一套面試題,是我工作所在的組長(也是我的面試官)出的套題. 題目中有抓包工具的使用細節;一個BUG描述的具體內容;性能測試自己所知道的方法;一個windows任務管理器的錯圖,需要找它的BUG。還有些其他概念題,具體的記不清了,大概是:V模型的測試類型,迭代-增量開發模型描述,每個測試級別,都需要明確哪些內容等等。組長將考題給我之後就離開了。

作為"資深面試"者,我深深的知道這時候打開手機搜索答案是沒有任何意義。面試的內容和結果,答題只佔很少的一部分。如果你通過搜索寫出的答案,越詳細,越全,越官方,被口頭提問時答不上來就肯定失敗了對吧。於是我全部都根據自己腦子裡的東西,答的題。半個小時候,我的組長準時回來了。看了我每個題後,開始口頭提問,並沒有再看那張正反面的卷子。

首先是敘述抓包工具的實際使用場景

我選擇了日常做的最多的那些敘述,做的少的沒敢說,怕被問住:

(1)更改host;

(2)埋點上報;

(3)Windows端測試環境軟件的自啟動: 將fiddler和被測軟件都加入到windows的自啟動菜單中(在開始菜單中"自啟動"右鍵進入文件夾設置)。將 fiddler配置好host之後重啟電腦,電腦重啟後會自啟動fiddler和被測軟件,即刻測試開機後的在測試環境軟件自動升級等操作。

在後來的工作中,使用抓包工具做了"下載按鈕應判斷是否已安裝指定APP,不需要重複下載";自己創建ini配置文件,自己簽名,自己打cab升級包,重定向到本地,將ini.update和dl接口重定向到本地的文件,進行模擬服務端升級等等。如果這種通用技能能在面試時多說出來一些會加分。

接下來是性能測試所知道的方法

我由於之前一直是客戶端或者終端的"點點點"測試,所以都是基於UI的。其中有大家都知道的:

(1)使用高速攝像機進行錄製。數幀,加機器手進行模擬點擊;

(2)adb命令加批處理進行模擬點擊屏幕座標,為了"美觀"加入間隔等待ping 127.1 是自己的主機

-n 6 ping6次,花費時間大概為5秒左右

>nul 不在屏幕上顯示ping的運行結果。如果不加>nul也沒有影響

(3)我把Monkey也算在性能測試裡。如果沒人告訴我該應用的啟動activity是什麼的時候。 Logcat中搜"cmp=": 找到應用的啟動activity.

(4)查看CPU使用值,查看內存使用。

我的組長問我壓力測試有什麼實踐嗎?我說很少,基本也都是adb命令座標點擊,比如拍照500次;或者長時間持續的執行一個操作。因為我不會識別頁面元素,不會抓元素來精準點擊。我的組長說了,你沒想過"掛機"也是壓力測試的一種嗎?我頓悟……壓力測試是無處不在的。

安全測試的思路

作為國內做安全最好的公司肯定要問一些安全測試的題。我將我準備的安全測試的思路說了一些:

(1)查看這個APP進程中,有沒有存在debug和info log.

(2)清緩存後,登錄不上,說明沒有殘存cookie.同一賬號,記住密碼,連續登陸幾天,看會不會生效,cookie有時間限制;登陸失敗後,不能記錄密碼的功能.

(3)登錄成功後生成的Cookie,是否是http only?,否則容易被腳本盜取,使用火狐的cookie Manager.

(4)在地址欄直接輸入各個功能頁面的URL地址,看系統如何處理,是否能夠直接鏈接查看(匿名查看),是否有權限控制,是否直接執行,並返回相應結果頁

(5)錯誤登陸的次數限制,防止暴力破解

(6)用戶名和密碼是否通過加密的方式,發送給Web服務器.

(7)什麼都不輸入,點擊提交按鈕,看提示信息。(非空檢查)

在這兒工作之後才知道,"安全"是從產品到研發到測試到運營每個人都極度遵守的意識,更不用說嚴格的代碼提交規範,安全審核流程,48小時必須修復安全問題的紅線制度等。具體的驗證項目不能詳細說屬於保密內容,但它是真真正正的安全之王。

服務端相關

雖然以前的測試工作肯定有服務端的交互,但是我們都管它叫:雲端配置,等等。沒有真的接觸服務端,看接口業務之類。關於服務端的提問,我沒有答上來。我的組長沒有因為我只是來面試的,而忽略我的測試知識獲取。主動給我講了:一個新接口的測試,除了服務端邏輯測試,客戶端容錯測試也很重要 。當客戶端對返回值不能進行容錯,如服務端給的規定邏輯是6,攔截接口後手動設置了999,或設置的頻率為1,攔截接口後手動設置0,或null,也許會出現異常內存洩漏,應用崩潰dump。

我清楚的記得我當時是假裝聽懂的,不停的點頭說原來是這樣啊。其實根本沒有任何輪廓。後來實際工作中發現,原來這麼簡單這麼基礎。所以面試時候這一點要說上來哦。

其他的關於數據庫,代碼類,我都沒答上來,當時是真的不會。但這個一定會被問,哪還會有不用數據庫的測試呢?哪怕是本地的測試數據庫也要會操作。軟件測試基礎概念,我能說的比較全。最重要的是,我真情流露了對大廠的愛。我組長後來跟我說,也是因為我十分愛大廠所以才破格錄取的我。

這就是這次面試的部分經驗。並沒有寫的很全,畢竟涉及一些保密。但此次面試就是擰螺絲,實際工作也是擰螺絲,所見即所得,非常的實在!從而也證明了,只會功能測試的測試老阿姨也是可以入職大廠並順利工作的。在大廠中學會了很多工具的使用,為功能測試增加了很多輔助。由於功能測試更順利,所以更有時間和機會去進階測試開發,學習代碼了。

相關推薦

推薦中...