面試問題整理


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

一、關於管理方面的

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)如何設計性能的測試用例

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

5)App性能關注點,哪些指標

 

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)如何測試灰度配置

 

3)app和web測試的區別與關注點

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

app更關注流量、耗電、瀏覽器、手機品牌、安卓軟件版本、分辨率的兼容,弱網,網絡切換,交叉中斷測試、下載安裝升級測試

4)https協議

 

5)怎樣進行接口測試

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

 

6)微信掃碼登錄設計測試用例

 

6、其它方面

1)自己的優缺點

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM