
01
—
背景介紹
本人計算機專業畢業,在某事業機關混迹了三年半,可以說是一事無成吧 😓,再加上沒有北京戶口,也不想繼續蹉跎歲月,遂決心到網際網路企業尋求突破。
在思考人生和重新規劃職業發展的關鍵階段,我有幸參加了霍格沃茨測試學院的「測試開發從入門到進階實戰」第七期(線上班)的課程,從測試技術到職業軟技能都收益頗多,這裡要特别強調感謝霍格沃茲測試學院的思寒老師以及各位助教們!
前後參加過幾家網際網路公司的測試開發崗位面試,這裡主要總結一下百度的面試經曆和心得體會。總體感覺,百度的面試官比較注重基礎,問題不難但是覆寫範圍比較全面。相對而言,另一家網際網路大廠的面試則比較注重項目經驗,對架構的認識之類的。
02
百度面試
參加過兩次百度的面試,一次止步三面,另一次止步于四面。
第一次面試百度是在 2018 上半年,一面和二面還比較順利,都是算法、資料結構之類的問題,但三面的時候,面試官覺得我的經曆與百度不 Match,于是讓我寫個全排列,妥妥的挂掉,當時自己的基礎技能還是不牢靠 😢。
第二次面試是在年底,這時由于已經參加了霍格沃茲測試學院的「測試開發從入門到進階實戰」課程,果然自信了好多,一直闖關到四面。由于本人習慣于記錄學習筆記,面試完通常也會記下來問題,供自己查缺補漏,在這裡也供各位小夥伴參考。
一面
- 項目經驗
- 遇到的某個難點是什麼?如何解決的?
- Java 中的容器有哪些?它們的差別和特性?
- Java 多線程的建立
- Python 中方法的參數是值傳遞還是引用傳遞?
- Python 中元組和清單的差別
- Flask 的某個問題(忘了😓)
- 性能測試關注哪些名額?
- Linux 中查找某個檔案并删除它
- Linux 查詢 CPU、記憶體的指令
- Git 的常見操作,如 git stash
- 算法:快排的實作
- 算法:數組中查找出現次數過半的數(這個沒寫好,據說空間複雜度高了😓)
- 算法:查找連結清單的倒數第三個數
- Java 的接口與抽象類的差別
二面
- 測試的過程
- 京東登入頁面怎麼測?
- 算法:二叉樹的深度計算
- 算法:一億個無序數找出 Top 100(這個也沒寫好,空間複雜度高了,應該用堆排序)
- UI 測試的過程
- 自己解決的最亮點的技術難點是什麼?
- TCP 和 UDP 的差別?如何保證 TCP 的可靠性?
- 打開一個網頁都發生了哪些事?
- 如果一個普通使用者,他的百度首頁打不開,問題怎麼定位?寫出定位流程。
三面
- 繼續問項目經驗和技術難點
- 了解現在的工作環境,背景等
- 戶口,家庭情況,伴侶工作等
- Web View 怎麼測試?
- UI 測試做的是 iOS 還是 Android?講講 iOS 的 UI 怎麼測?
三面的時間很短,直接說過了。
四面
- 家庭情況,伴侶工作,職位級别等
- 和現在的上司關系如何?
- 和現在的同僚關系如何?
- 抗壓能力,有沒有抗壓經驗?
- 為什麼不在事業機關呆了?
- 準備好百度的工作模式了嗎?
- 什麼時候入職、期望的薪資
總結:因為當時自己在城市選擇上有些猶豫,不是很想留北京,回想起四面的時候,态度不夠堅定,回答的也随意了點,是以最終還是遺憾的挂掉了。當時面完回來,也真切的感覺到自己不會的點還有好多,需要繼續深入學習和實踐。
03
面試經驗總結
百度面試歸來,我又紮實的學習了霍格沃茲測試學院裡的「接口自動化測試」、「UI 自動化測試」這些實戰類課程,根據老師的講解,并結合以往的項目經驗反複思考,感覺自己對項目流程和架構了解都有了較大提升。
然後也繼續抱着學習的态度,積極嘗試網際網路企業面試機會,最終比較幸運的拿下心儀公司的 Offer,團隊的 Leader 也很 Nice!😄能加入這麼優秀的團隊感到很驚喜很興奮,同時也倍感壓力,感覺自己在業務和技能水準上要快速精進,更上一層樓!
最後,總結一下個人認為比較重要的知識點:
- 接口自動化測試:測試架構,多個有關聯的接口的用例編寫,用例的組織及存儲,接口測試的覆寫率,RESTAssured 的封裝等。
- UI 自動化測試:iOS 和 Android 的差別,Appium 代碼的雙端複用等。
- 性能測試:工具、性能名額、多線程、并發。
- 算法 :常見的快排、冒泡、堆排、二分查找。
- 資料結構:常見的容器和差別。
- 資料庫:知識點比較雜,比如存儲過程,索引類型和優缺點,事務,樂觀鎖和悲觀鎖,索引查詢,drop、delet 和 truncate 的差別,視圖及使用場景,三個範式,資料庫隔離級别,SQL 語句,B 樹等。(這個後續考慮再補充一篇單獨介紹的文章)
- 用例設計:給一個場景設計測試用例。