面試過了,總結測試工程師面試題(含答案)

码上生花發表於2024-11-11

📝 博主首頁 : 「碼上生花」同名公眾號 :「傷心的辣條」

📝 面試求職: 「面試試題小程式」內容涵蓋 測試基礎、Linux作業系統、MySQL資料庫、Web功能測試、介面測試、APPium移動端測試、Python知識、Selenium自動化測試相關、效能測試、效能測試、計算機網路知識、Jmeter、HR面試,命中率槓槓的。(大家刷起來…)

📝 職場經驗乾貨:

軟體測試工程師簡歷上如何編寫個人資訊(一週8個面試)

軟體測試工程師簡歷上如何編寫專業技能(一週8個面試)

軟體測試工程師簡歷上如何編寫專案經驗(一週8個面試)

軟體測試工程師簡歷上如何編寫個人榮譽(一週8個面試)

軟體測試行情分享(這些都不瞭解就別貿然衝了.)

軟體測試面試重點,搞清楚這些輕鬆拿到年薪30W+

軟體測試面試刷題小程式免費使用(永久使用)


普通二本計算機專業畢業,從畢業後,第一份接觸測試的工作是在一家通訊小公司,大部分接觸的工作是以功能測試為主,一直都是幾千塊錢工資,還一度被派出差,以及兼職各種產品、運維、運營的活,感覺自己都不像一個測試人員。求個安穩,就這樣“混”了2年。不願意就這樣墮落,想要不斷提升自己。

在入職這家公司前,也就是兩年前,我就開始規劃了我自己的人生,所以在兩年時間裡,我並未懈怠。

現如今,我已經跳槽到了阿里,順利拿下 offer。自己的情況很普通,本科文憑,沒有背景,分享這次我的經歷,想鼓勵和我同樣起點的人!

人人都有大廠夢,對於程式設計師來說,BAT 為首的一線網際網路公司肯定是自己的心儀物件,畢竟能到這些大廠工作,不僅薪資高待遇好,而且能力技術都能夠得到提升,最關鍵的是還能夠給自己鍍上一層金,讓人瞻仰。

不過有人失業也有人就業,大廠核心賽道還不是一直在招人,關鍵就是如何進入核心賽道——提升自我核心價值,擁有不可替代能力!!

阿里面試題(技術部分)

1.linux基本語句

2.http/https 協議相關

3.溝通能力,推動工作中常見問題的能力

4.資料庫修改欄位,連表查詢

5.過往做過專案的深入度

6.返回碼及問題出處

7.介面請求方式及區別(post/get)

8.charles一直訪問固定引數、打斷點

9.H5測試是透過哪裡看介面資料的 ,如何定位問題是前端還是後端;安卓測試和iOS測試的區別

10.怎麼用jmeter做單介面測試,怎麼判斷總結介面的引數

11.行測題 兩個沙漏,一個7分鐘,一個11分鐘,如何保證兩個沙漏15分鐘漏完? 8個球,1個球比較輕,可以用天平秤,用最快的方式秤出比較輕的球 2個蠟燭,每個蠟燭可以燒1個小時,請問怎麼燒得到15分鐘

12.用例設計(考慮的異常型別,覆蓋度,發散度):朋友圈點贊,朋友圈評論,微信發紅包(比如餘額為—3,定義前後端問題),朋友圈小影片,微信轉賬,抖音點贊,音樂播放器頁面 滴滴出行從a點到b點測試用例,抖音短影片版本升級新增點贊和評論的功能做一條case設計。

13.個人做過專案的每個模組都描述清楚。linux,adb命令,測試流程,介面測試怎麼測試的這些了。

14、怎麼用fiddler定位問題,比如餘額為-3,怎麼判斷問題

15、fiddler 如何抓取https的包,如何進行弱網模擬,如何修改請求引數返回引數,如何連線手機安卓和ios(回答出代理)

16、介面入參和出參都沒有改變,介面邏輯變化,該如何測試

17、liunx命令 解壓縮包 查日誌 日誌資訊過濾

18、資料庫索引,關係型資料庫非關係型資料庫,為什麼要用 非關係型資料庫

19、索引瞭解麼,簡單說下索引原理 什麼時候加索引 (結合業務說下什麼時候用到索引 怎麼使用的)

20、介面測試如何開展 怎麼測試 測試方法是啥

21、併發出現問題怎麼最佳化(看你定位問題的思路)

22、你介面自動化如何實現的

23、你說一下你專案 怎麼測試的

24、還有購物車 商品數量對的,到了訂單頁面就少了如何定位,

25、還有購物車,結算,購物車商品都沒問題 形成的支付完成的訂單商品少了 怎麼辦,怎麼定位 實際就是考察如何定位問題:

26、還問了python 的等等號和is得區別

分清階段,制定計劃

從我大學之後,我清晰到自己的現狀,也明白要想改變自己的人生,那就要懂得去規劃。所以,從我實習工作開始,就已經對自己的職業生涯開始進行了一個規劃,而我的規劃很清晰地分成了幾個階段,也把每個階段的目標和重心確立了下來。

  • 第一階段:0~3 年;我給自己的第一個時間就是 3 年時間,3 年完成第一次跳槽,而且需要跳到更大的平臺。

  • 第二階段:3~7 年;確立自己的發展方向,自動化測試工程師、測試開發、效能測試 或者安全測試均可,但我知道,無論是朝哪個方向發展,技術知識的儲備一定要系統完善。

  • 第三階段:7~未來;這個階段,我應該完成了自己的發展方向,這個時候需要思考人生,或者繼續自己的愛好,享受生活,也或者開始進行創業。

軟體測試人員掌握哪些技術可以立馬跳槽漲薪?

1、文件能力:各種文件的編寫能力

因為不管是功能測試工程師還是自動化測試工程師都必須要跟各種文件打交道,所以最基本的需要掌握一些常用的文件編輯的使用,比如說:

  • 常用編寫測試用例的工具:excel表格或者wps等
  • 編寫需求分析需要的工具:xmind思維導圖,可以迅速梳理思路和分析測試需求點,從而更快的完成需求,覆蓋需求,使用操作簡單,還支援各種到處格式

  • 測試用例指令碼程式碼編輯器IDE:Visual Studio Code ,pycharm, sublime等

  • 檔案管理器:Q-Dir,是一個多視窗的檔案瀏覽器,操作簡單,使用高效,特別是多種目錄之間跳轉複製貼上的情況可以提高很大的工作效率

  • 檔案搜尋工具:Everything ,一個非常輕量級的搜尋工具,而且速度快,定位檔案的時候必選之一,而且支援檔案所有詳細資訊,比如路徑大小等

  • 截圖工具:Snipaste ,因為有時候經常會在提交缺陷報告的時候,需要提交一些備註資訊,比如bug復現,體現形式這個時候我們就可以使用一些比較優質的截圖工具輔助我們更高效快速的截圖,而且可以加上文字資訊,影像操作,等等

  • 檔案解壓工具:7zip,因為測試人員經常要和各種檔案打交道,避免不了傳輸互動,所以解壓和壓縮也是必須要使用到的所以推薦這個工具因為開源免費,並且體積小,傳輸快,基本的解壓壓縮格式也都具備,用起來比較方便。

  • 編寫工具Typora Markdown:支援各種語法,能夠渲染後及時展示效果,提供了不同的模式提升編寫效率。

2、專案能力:

很多人在自學完網上的測試課程之後想去找工作但是沒有一些實際的專案經驗,所以簡歷專案經歷寫起來就寸步難行。由於各大招聘網站上百分之90以上的公司都有標明,是需要有專案經驗和工作經驗的,比如經常動不動就是3年起步,五年八年一抓一大把,那麼作為自學者對於專案的測試經驗肯定是缺乏的,有些人就隨意寫或者不寫,這樣是很難拿到面試邀請的。

所以如何獲取專案的能力非常重要,如果有需要的小夥伴可以進群:748833197,裡面有完整的軟體測試學習資料和18個軟體測試的中大型實戰專案,我們把一些大型測試專案各種型別發給你去聯絡實戰,實際公司中的專案技術。

這些資料中涉及到的測試內容非常廣泛,專案型別也非常豐富,這些實戰專案都是企業級別的,所以如果能夠獨立完成專案的各種測試工作內容,基本上離高薪就業工作就不遠了。

3、程式設計知識:

作業系統:Windows,Linux需要掌握最基本的作業系統的基本操作比如在不同的作業系統中去搭建測試環境和開發環境等

資料庫:最基本Mysql需要熟練掌握,比如常見的增刪改查等

程式語言:java或者python可選一門熟練掌握,主要用來編寫自動化的指令碼,比如介面自動化或者web自動化等

4、介面測試:

掌握主流測試工具

  • Jmeter:一款開源的效能測試工具,操作簡單,方便,既有jdbc request運算元據庫資料,也有http request和soap request應對測試

  • Postman:谷歌瀏覽器的擴充套件工具,谷歌商店中選中安裝,介面同poster差別不大,介面簡潔

  • RestClient:Firefox上一款用於測試各種Web服務的外掛,它可以向伺服器傳送各種HTTP請求(使用者也可以自定義請求方式)

  • fiddler抓包工具:是一個http協議除錯代理工具,它能夠記錄並檢查所有你的電腦和網際網路之間的http通訊,設定斷點,檢視所有的“進出”Fiddler的資料(指cookie、html、js、css等檔案)。

5、自動化測試框架:

Selenium:是一個用於Web應用程式測試的工具。

特點和優勢:

A.開源軟體:原始碼開放可以根據需要來增加工具的某些功能

B.跨平臺:linux 、windows 、mac
C.核心功能:就是可以在多個瀏覽器上進行自動化測試

D.多語言:Java、Python、C#、JavaScript、Ruby等
E.成熟穩定:目前已經被google , 百度, 騰訊等公司廣泛使用
F.功能強大:能夠實現類似商業工具的大部分功能,因為開源性,可實現定製化功能

Appium:是一個自動化測試開源工具。

主要用於做app移動端自動化測試的工具,支援iOS和android平臺上的移動原生應用、移動Web應用和混合應用。

Appium還是一個跨平臺工具,它允許測試人員使用同樣的介面、基於不同的平臺寫自動化測試程式碼,大大增加了測試套件間程式碼的複用性

6、效能測試

測試工具常用的Jmeter或者loadrunner,主要用於效能場景設計、效能分析及調優

Loadrunner:它可以驗證下系統或者專案的特性環境下是否滿足效能需求,然後透過測試,達到效能指標,並且可以調整專案環境,進行效能測試使專案效能達到最優。

Loadrunner裡面有豐富的元件,一般測試流程是建立指令碼->設計場景->執行場景->分析結果,需要掌握如何建立指令碼,錄製指令碼,手工寫指令碼,以及引數化指令碼等

大廠軟體測試崗經驗分享

透過大資料總結發現,其實軟體測試崗的面試都是差不多的。常問的有下面這幾塊知識點:

全網首發-涵蓋16個技術棧

第一部分,測試理論(測試基礎+需求分析+測試模型+測試計劃等等)

第二部分,Linux( Linux基礎+Linux練習題)

第三部分,MySQL(基礎知識+查詢練習+資料庫企業真題)

第四部分,Web測試

第五部分,API測試

第六部分,App測試

第七部分,管理工具
第八部分,Python基礎(Python基礎+程式設計題+集合+函式等等)
第九部分,Selenium相關
第十部分,效能測試
第十一部分,LordRunner相關
第十二部分,計算機網路
第十三部分,組成原理
第十四部分,資料結構與演算法
第十五部分,邏輯題
第十六部分,人力資源

軟體測試基礎:

軟體測試的步驟是什麼?
如何錄製測試指令碼?
應該考慮進行如何測試的測試方法
怎樣估計測試工作量?
測試設計的問題
當測試過程發生錯誤時,有哪幾種解決辦法?
測試執行的問題
測試評估的目標
如何提高測試?
C/S模式的優點和缺點
B/S模式的優點和缺點

Linux:

grep和find的區別? grep 都有哪些用法?
檢視IP地址?
建立和刪除一個多級目錄?
在當前使用者家目錄中查詢haha.txt檔案?
如何查詢出tomcat的程序並殺掉這個程序,寫出linux命令?
動態檢視日誌檔案?
檢視系統硬碟空間的命令?
檢視當前機器listen 的所有埠?

Python:

統計python原始碼檔案中程式碼行數,去除註釋,空行,進行輸出?
python呼叫cmd並返回結果?
氣泡排序
1,2,3,4 這4個數字,能組成多少個互不相同的且無重複的三位數,都是多少?
請用 python 列印出 10000 以內的對稱數(對稱數特點:數字左右對稱,如:1,2,11,121,1221 等)
給定一個整數 N,和一個 0-9 的數 K,要求返回 0-N 中數字 K 出現的次數
判斷 101-200 之間有多少個素數,並輸出所有的素數
一個輸入三角形的函式,輸入後輸出是否能組成三角形,三角形型別,請用等價類- 劃分法設計測試用例

MySQL:

你用的Mysql是哪個引擎,各引擎之間有什麼區別?
如何對查詢命令進行最佳化?
資料庫的最佳化?
Sql注入是如何產“生的,如何防止?
NoSQL和關聯式資料庫的區別?
MySQL與MongoDB本質之間最基本的差別是什麼
Mysql資料庫中怎麼實現分頁?
Mysql資料庫的操作?
最佳化資料庫?提高資料庫的效能?
什麼是資料的完整性?

Web:

Web測試和app測試區別?
WEB測試環境搭建和測試方法
WEB測試教程
WEB測試要點及基本方法
Web測試頁面總結

介面測試:

什麼是介面
如果模組請求http改為了https,測試方案應該如何制定,修改?
常用HTTP 協議除錯代理I具有什麼?詳細說明抓取HTTPS協議的設定過程?
描述TCP/IP協議的層次結構,以及每一-層中重要協議
jmeter,一個介面的響應結果如下:
介面產生的垃圾資料如何清理
依賴第三方的介面如何處理
測試的資料你放在哪?
什麼是資料驅動,如何引數化?

效能測試:

你認為效能測試的目的是什麼?做好效能測試的工作的關鍵是什麼?
服務端效能分析都從哪些角度來進行?
如何理解壓力測試,負裁測試以及效能測試?
如何判斷是否有記憶體洩漏及關注的指標?
描述軟體產“生記憶體洩露的原因以及檢查方式。(可以結合- 種開發語言進行描述)
簡述什麼是值傳遞,什麼是地址傳遞,兩者區別是什麼?
什麼是系統瓶頸?

selenium:

如何開展自動化測試框架的構建?
如何設計自動化測試用例:
webdriver如何開啟和退出一個瀏覽器?
什麼是自動化測試框架?
Selenium是什麼,流行的版本有哪些?
你如何從命令列啟動Selenium RC?
在我的機器埠4444不是免費的。我怎樣才能使用另一個埠?
什麼是Selenium Server,它與Selenium Hub有什麼不同?
你如何從Selenium連線到資料庫?
你如何驗證多個頁面上存在的一個物件?
XPath中使用單斜槓和雙斜槓有什麼區別?
如何編寫SeleniumIDE/ RC的使用者擴充套件?
如何在頁面載入成功後驗證元素的存在?
你對Selenium Grid有什麼瞭解?它提供了什麼功能?
如何從你的Java Class啟動Selenium伺服器?
Selenium中有哪些驗證點?
什麼是XPath?什麼時候應該在Selenium中使用XPath?

計算機與網路:

一臺計算機的IP是192.168.10.71子網掩碼255.255.255.64與192.168.10.201 …
請簡述DNS、活動目錄、域的概念。
10M兆寬頻是什麼意思?理論下載速度是多少?
什麼是IP地址?
OSI七層網路模型的劃分?
TCP和UDP有什麼不同?
HTTP屬於哪一層的協議?
HTTP和HTTPS的區別?
cookies和session的區別?
HTTP的get請求和post請求的區別?
HTTP1.0和HTTP1.1有什麼區別
TCP的連線建立過程,以及斷開過程?
客戶端使用DHCP獲取IP的過程?
寫出某個網段的網路地址和廣播地址?

人力資源:

你的測試職業發展是什麼?你自認為做測試的優勢在哪裡?
你找工作時,最重要的考慮因素為何?
為什麼我們應該錄取你?
請談談你個人的最大特色。
一個測試工程師應具備那些素質和技能?
還有問一下你是怎樣保證軟體質量的,也就是說你覺得怎樣才能最大限度地保證軟體質量?
為什麼選擇測試這行?
如果我僱用你,你能給部門帶來什麼貢獻?

上面就是我整理出來的一份全套學習筆記。希望大家能在這個成長過程中收益良多。全方位提升測試技術,建立一套屬於自己的技術體系。幫助大家不斷學習和最佳化技術棧,跟進先進和主流的測試技術,給到大家帶來的不僅僅是技術和薪資的提升,更多的是改變測試人在IT技術領域的地位和心態,拔高測試行業的技術深度。


最近很多朋友都在說今年的網際網路行情不好,面試很難,所以我建立了一個交流群:748833197,希望優秀的軟體測試寶子們都可以聚集在一起,大家可以一起解決軟體測試難題、面試難題、以及工作上的問題、以及利用這次機會提升自己的能力!!!

此外,我也會分享軟體測試面試經驗,跳槽、轉行資訊。

相關文章