面試問題整理

2022-08-23 22:15:17 字數 3829 閱讀 3956

最近面試,遇到了不少題目,為今後的再面試做準備,特收集記錄於此

一、關於管理方面的

1、如何構建比較完整的測試體系框架,可以從哪些方面入手?

思路:(測試技術體系建設  測試管理支撐)

主要從團隊組織、環境建設、標準制定、人員培養、配置管理、工作流程

a、軟體測試管理體系建設可以從測試的總體規程、需求跟蹤管理、軟體缺陷跟蹤管理、軟體缺陷分析管理、軟體質量度量管理、軟體測試人員的職業體系規劃、軟體測試人員的績效考核體系、軟體測試相關的配置管理體系

b、軟體測試技術體系建設可以從輸出技術技能圖譜,針對技術人員的系統測試培訓,測試技能體系的建立、試點、推廣

2、針對版本上線後,出現線上問題或漏測情況,如何規避?

思路:a、故障可能在需求、技術設計、開發、漏測、上線不規範等過程產生,因而,故障的控制必須從各個階段分別入手

b、根據業務成熟度、團隊成員特點有針對性應對(業務需求分析、變更管理引起.人員是否充足、是否進行冒煙測試、風險控制.)

c、針對已有的故障,在覆盤時找到最根本的原因

參考

3、作為管理者,怎樣招乙個合格的測試人員?

思路;分析能力、專業技能、溝通表達、適應和學習能力、記憶力、自信心、耐心、懷疑精神、洞察力、有條理和注意細節

4、如何管理團隊?

思路:可以從怎樣管理人和事方面說明,當時面試的時候,面試官就說我的經驗都是偏於管事多,管人方面需要加強

1)關於事

資源共享、同乙個目標、

2)關於人

多溝通、盡早發現和解決問題,充分了解組員正在做什麼和怎樣做

放權及授權、同等對待

5、怎樣留住人員?

思路:a、制定明確的激勵計畫和透明的未來目標,用人制度

b、適合的薪資制度

c、多多和團隊內成員進行溝通,建立乙個融洽的團隊環境

d、加強專案管理,強化文件管理,培訓機制

f、建立分享機制,使員工之間建立學習的氛圍

6、測試質量體系規劃和建設

思路:(軟體規模、進度、工作量、缺陷指標、質量指標分析)

1)明確測試輸入輸出準則

2)測試策略、用例質量、執行質量、缺陷質量、過程質量監控(風險評估、缺陷預防)

二、關於技術方面的

1、資料庫方面

1)如何使用sql生成1000萬條資料?

思路:a、生產環境拉取然後備份到測試環境(但也有問題,實際環境的資料由於各種原因不一定全部滿足測試資料)

b、寫**生成資料? 涉及如何寫的問題

資料庫中新建函式---儲存過程,輸入批量增加資料的**塊

2)如何挑選出重複的資料(比如姓名欄位會出現重名的情況)

思路:以姓名分組,然後使用函式統計出現重複的次數count

3)給多個表,然後寫出關聯的sql語句

2、效能測試方面

1)效能測試怎麼做的? 如何保證併發數? 為什麼會用分布式,在做分布式時如何分配每台電腦的使用者數? 伺服器效能怎麼做?

效能測試流程核心:搭建效能環境、設計用例、場景建模、準備測試資料、測試指令碼開發(資料隔離,防止資料汙染)、執行、問題分析與調優、維護

怎麼做:

如果是測試響應時間,對乙個介面進行壓力測試,不斷加壓,直到響應時間達到或超過指標,觀察當前其併發數和tps,同樣的併發數,多執行幾次,得到乙個平均值或穩定值(即tps和trt曲線相對穩定的值),並記錄下來

如果是測試介面的最大併發數,逐漸增加執行緒數,看聚合報告裡吞吐量throughput,每秒完成的請求數隨著傳送的samples(發出請求數量)實時在變,當吞吐量不再往上增加時,這個時候的併發數即是最大併發數,增加執行緒數,tps不變,響應時間增加,報錯增加,說明達到極限了

如何保證併發數:同一時刻的併發是很難做到的。我們用來發起壓力的測試工具本身要能做到同一時刻發起壓力,如果設定執行緒數過多,負載機本身資源不足會有排隊,請求建立和服務端的連線過程會排隊,請求資料傳送到服務的時候在網路佇列上也會排隊,請求資料達到服務端,在服務端也會進行排隊,所以嚴格意義上的併發多少使用者數等等是比較難做到的。但是,我們可以分層去看,像一般的webserver或容器服務都有監控資料,如nginx的active connections,tomcat的currentthreadsbusy,這些引數表明服務本身目前正在處理的最大併發執行緒數(監控web層(例如nginx)的連線數和請求數,檢視實際達到伺服器端的併發數是否跟我們的設定值一致)

為什麼會用分布式:電腦連線數不夠,為了解決單個物理伺服器容量和效能瓶頸問題而採用的優化手段(分布式是從物理資源的角度去將不同的機器組成乙個整體對外服務)

分布式時如何分配每台電腦的使用者數: 負載機的執行緒數與指令碼設計的執行緒數一致,每台的負載機執行緒數是一樣的,由排程機監控彙總測試結果

伺服器效能怎麼做: 關注吞吐量、響應時間 、事務成功率、資源使用率

n個人在客戶端同時進行功能性操作的同時,在確保功能實現正確的前提下,考察服務端應用程式的各項效能指標,以及伺服器硬體資源的使用情況

2)假設系統a呼叫系統b,把b的介面都mock了,有啥好處和壞處?

思路:好處:避免其它模組的出錯引起的本模組錯誤,起到隔離作用、並行工作,程序互不影響、提前接入測試,保證測試效率,模擬資料,增加覆蓋

壞處:大量使用mock測試的場景失去了真實性,可能會導致在後續的系統性測試時才發現bug,使得缺陷發現的較晚,可能會造成後續修復成本更大;

3)多個介面之間存在呼叫關係,在對介面壓測時,系統崩了,怎麼判斷是哪個介面引起的問題

思路:a、從最低層的介面先做效能測試,再看該介面呼叫上層的哪些業務介面

b、雖然存在多層呼叫,分析當前壓測的介面的業務是否涉及多個介面,如果不涉及就不用考慮是其它介面的問題,如果涉及就需要一層層的向上找,看到底是哪個介面引起的系統崩潰

4)如何設計效能的測試用例

確定效能目標;場景設計,場景設計一定從簡單到複雜。(容量、安全、可靠、壓力、響應時間、寬頻、資源利用率、恢復能力、可擴充套件性)

3、**方面

1)統計1-9999中數字3出現的次數

思路:包含3的數字都統計一次,如333,則統計3次

2)陣列逆序輸出

3)計算1-100的和

4、自動化方面

1)ajax非同步時,如何進行元素的定位?

這裡應該可以答 三大延時等待處理(硬性等待 thread sleep,隱式等待 timeouts  顯示等待 自定義)

2)如何實現用例失敗或異常時需要截圖

思路:a、定義乙個截圖的方法並儲存file

b、定義乙個用例失敗的監聽類 ,繼承testng框架的失敗監聽介面ihookable,該介面有乙個方法run

c、在testng.xml配置監聽執行

3)如何進行分布式執行webdriver用例

思路:a、selenium grid使用,同時啟動乙個hub和至少乙個node來實現

b、借助於testng配置檔案進行,即在case中以變數形式替換真實位址

5、測試方面

1)如何測試乙個下訂單

思路:一次下單的商品數量、訂單的型別、同樣的商品是否可重複下單、 是否可下多個訂單

2)如何測試灰度配置

流程和技術測試方面是一致的

4)https協議

5)怎樣進行介面測試

思路:充分理解介面邏輯業務,配合介面引數組合,上下游服務的容錯處理,如依賴的介面異常,本介面是否有很好的容錯

6、其它方面

1)自己的優缺點

面試問題整理

所謂事務,就是提供一種機制,將乙個活動涉及的所有操作納入到乙個不可分割的執行單元,只要其中任何乙個操作執行失敗,都將導致整個事務的回滾。簡單的說,就是一種 要不什麼都不做,要麼做全套 機制。資料庫本地事務 acid原則 a atomicity 原子性 c consistency 一致性 i isol...

面試問題整理

c 中 deque的實現 可以在兩端高效插入 刪除資料,支援隨機訪問 內部實現原理 利用分段陣列,將元素存放在乙個個大小固定的陣列中,再有乙個索引陣列存放這些陣列的首位址。頭部插入資料時,移動頭部首位址索引即可,從後往前移動,如果當前資料段滿了,則將資料儲存在新建立的分段陣列中,並將其首位址加入到索...

HDFS面試問題整理

1 hdfs讀取流程,小檔案處理 2 hdfs的資料壓縮演算法 3 datanode什麼情況下不會進行備份 4 hdfs的體系結構 5 hdfs的儲存機制 6 hdfs的基本原理 7 hdfs上傳檔案的流程 8 hadoop1.0和2.0hdfs的block各為多少?9 hdfs為什麼不太適合小檔案...