軟件測試面試題及答案,2021最強版!


1、你的測試職業發展是什么?  

  測試經驗越多,測試能力越高。所以我的職業發展是需要時間積累的,一步步向着高級測試工程師奔去。而且我也有初步的職業規划,前3年積累測試經驗,按如何做好測試工程師的要點去要求自己,不斷更新自己改正自己,做好測試任務。

2、你認為測試人員需要具備哪些素質

做測試應該要有一定的協調能力,因為測試人員經常要與開發接觸處理一些問題,如果處理不好的話會引起一些沖突,這樣的話工作上就會不好做。還有測試人員要有一定的耐心,有的時侯做測試很枯燥乏味。除了耐心,測試人員不能放過每一個可能的錯誤。

3、你為什么能夠做測試這一行

雖然我的測試技術還不是很成熟,但是我覺得我還是可以勝任軟件測試這個工作的,因為做軟件測試不僅是要求技術好,還有有一定的溝通能力,耐心、細心等外在因素。綜合起來看我認為我是勝任這個工作的。

4、測試的目的是什么?

測試的目的是找出軟件產品中的錯誤,是軟件盡可能的符合用戶的要求。當然軟件測試是不可能找出全部錯誤的。

5、測試分為哪幾個階段?

一般來說分為5個階段:單元測試、集成測試、確認測試、系統測試、驗收測試

6、單元測試的測試對象、目的、測試依據、測試方法?

測試對象是模塊內部的程序錯誤,目的是消除局部模塊邏輯和功能上的錯誤和缺陷。測試依據是模塊的詳細設計,測試方法是采用白盒測試。

7、怎樣看待加班問題

加班的話我沒有太多意見,但是我還是覺得如果能夠合理安排時間的話,不會有太多時候加班的。

8、結合你以前的學習和工作經驗,你認為如何做好測試。

根據我以前的工作和學習經驗,我認為做好工作首先要有一個良好的溝通,只有溝通無障礙了,才會有好的協作,才會有更好的效率,再一個就是技術一定要過關,做測試要有足夠的耐心,和一個良好的工作習慣,不懂的就要問,實時與同事溝通這樣的話才能做好測試工作。

9、你為什么選擇軟件測試行業

因為之前了解軟件測試這個行業,覺得他的發展前景很好。

10、根據你以前的工作或學習經驗描述一下軟件開發、測試過程,由哪些角色負責,你做什么

要有架構師、開發經理、測試經理、程序員、測試員。我在里面主要是負責所分到的模塊執行測試用例。

11、根據你的經驗說說你對軟件測試/質量保證的理解

軟件質量保證與測試是根據軟件開發階段的規格說明和程序的內部結構而精心設計的一批測試用例(即輸入數據和預期的輸出結果),並根據這些測試用例去運行程序,以發現錯誤的過程。它是對應用程序的各個方面進行測試以檢查其功能、語言有效性及其外觀排布。

12、軟件測試的流程是什么?

需求調查:全面了解系統概況、應用領域、軟件開發周期、軟件開發環境、開發組織、時間安排、功能需求、性能需求、質量需求及測試要求等。根據系統概況進行項目所需的人員、時間和工作量估計以及項目報價。

制定初步的項目計划。

測試准備:組織測試團隊、培訓、建立測試和管理環境等。

測試設計:按照測試要求進行每個測試項的測試設計,包括測試用例的設計和測試腳本的開發等。

測試實施:按照測試計划實施測試。

測試評估:根據測試的結果,出具測試評估報告。

13、你對SQA的職責和工作活動(如軟件度量)的理解?

SQA就是獨立於軟件開發的項目組,通過對軟件開發過程的監控,來保證軟件的開發流程按照指定的CMM規程(如果有相應的CMM規程),對於不符合項及時提出建議和改進方案,必要時可以向高層經理匯報以求問題的解決。通過這樣的途徑來預防缺陷的引入,從而減少后期軟件的維護成本。SQA主要的工作活動包括制定SQA工作計划,參與階段產物的評審,進行過程質量、功能配置及物理配置的審計等;對項目開發過程中產生的數據進行度量等等。

14、說說你對軟件配置管理的理解

項目在開發過程中要用相應的配置管理工具對配置項(包括各個階段的產物)進行變更控制,配置管理的使用取決於項目規模和復雜性及風險的水平。軟件的規模越大,配置管理就越顯得重要。還有在配置管理中,有一個很重要的概念,那就是基線,是在一定階段各個配置項的組合,一個基線就提供了一個正式的標准,隨后的工作便基於此標准,並只有經過授權后才能變更這個標准。配置管理工具主要有CC,vSS, cVS,SVN等,我只用過SVN,對其他的工具不是很熟悉。

15、怎樣寫測試計划和測試用例

簡單點,測試計划里應有詳細的測試策略和測試方法,合理詳盡的資源安排等,至於測試用例,那是依賴於需求(包括功能與非功能需求)是否細化到功能點,是否可測試等。

16、說說主流的軟件工程思想(如CMM、CMMI、RUP ,XP, PSP,TSP 等)的大致情況及對他們的理解

CMM :Sw Capability Maturity Model軟件能力成熟度模型,其作用是軟件過程的改進、評估及軟件能力的評鑒。

CMMI:Capability Maturity Mode1 Integration能力成熟度模型集成CMAI融入了大部分最新的軟件管理實踐,同時彌補了SW一CMM模型中的缺陷。

RUP :rational unified process是軟件工程話過程。

XP:extreme program,即極限編程的意思,適用於小型團隊的軟件開發,像上面第三個問題就可以結合原型法采用這樣的開發流程。要明白測試對於xp開發的重要性,強調測試(重點是單元測試)先行的理念。編程可以明顯提高代碼的質量,持續集成對於快速定位問題有好處。

PSP,TSP分別是個體軟件過程和群體軟件過程。大家都知道,CMM只是告訴你做什么但並沒有告訴你如何做,所以PSP/TSP 就是告訴你企業在實施CMM的過程中如何做,PSP強調建立個人技能(如何制定計划、控制質量及如何與其他人相互協作等等)。而TSP 着重於生產並交付高質量的軟件產品(如何有效的規划和管理所面臨的項目開發任務等等)。總之,實施CMM,永遠不能真正做到能力成熟度的提升,只有將實施CMM與實施PSP和TSP有機結合起來,才能發揮最大的效力。因此,軟件過程框架應該是CMM/PSP /TSP的有機集成。

17、你是怎樣保證軟件質量的,也就是說你覺得怎樣才能最大限度的保證軟件的質量?

測試並不能夠最大限度的保證軟件的質量,軟件的高質量是開發和設計出來的,而不是測試出來的,它不僅要通過對軟件開發流程的監控,使得軟件開發的各個階段都要按照指定的規程進行,通過對各個階段產物的評審,QA對流程的監控,對功能及配置的審計來達到開發的最優化。當然測試也是保證軟件質量的一個重要方式,是軟件質量保證工程的一個重要組成部分。

18、基於目前中國的國情,大多數公司的項目進度緊張、人員較少、需求文檔根本沒有或者很不規范,你認為在這種情況下怎樣保證軟件的質量?(大多數公司最想知道的就是在這種困難面前你該怎么保證軟件的質量,因為這些公司一般就是這種情況--既不想投入過多又想保證質量)

 

 

測試技術面試題

1、什么是兼容性測試?兼容性測試側重哪些方面?

參考答案:

兼容測試主要是檢查軟件在不同的硬件平台、軟件平台上是否可以正常的運行,即是通常說的軟件的可移植性。

兼容的類型,如果細分的話,有平台的兼容,網絡兼容,數據庫兼容,以及數據格式的兼容。

兼容測試的重點是,對兼容環境的分析。通常,是在運行軟件的環境不是很確定的情況下,才需要做兼容。根據軟件運行的需要,或者根據需求文檔,一般都能夠得出用戶會在什么環境下使用該軟件,把這些環境整理成表單,就得出做兼容測試的兼容環境了。

兼容和配置測試的區別在於,做配置測試通常不是Clean OS下做測試,而兼容測試多是在Clean OS的環境下做的。

2、我現在有個程序,發現在Windows上運行得很慢,怎么判別是程序存在問題還是軟硬件系統存在問題?

參考答案:

1、檢查系統是否有中毒的特征;

2、檢查軟件/硬件的配置是否符合軟件的推薦標准;

3、確認當前的系統是否是獨立,即沒有對外提供什么消耗CPU資源的服務;

4、如果是C/S或者B/S結構的軟件,需要檢查是不是因為與服務器的連接有問題,或者訪問有問題造成的;5、在系統沒有任何負載的情況下,查看性能監視器,確認應用程序對CPU/內存的訪問情況。

3、測試的策略有哪些?

參考答案:

黑盒/白盒,靜態/動態,手工/自動,冒煙測試,回歸測試,公測(Beta測試的策略)

4、正交表測試用例設計方法的特點是什么?

參考答案:

用最少的實驗覆蓋最多的操作,測試用例設計很少,效率高,但是很復雜;

對於基本的驗證功能,以及二次集成引起的缺陷,一般都能找出來;但是更深的缺陷,更復雜的缺陷,還是無能為力的;

具體的環境下,正交表一般都很難做的。大多數,只在系統測試的時候使用此方法。

5、描述使用bugzilla缺陷管理工具對軟件缺陷(BUG)跟蹤的管理的流程?

參考答案:

就是Bugzilla的狀態轉換圖。

6、你覺得bugzilla在使用的過程中,有什么問題?

參考答案:

界面不穩定;

根據需要配置它的不同的部分,過程很煩瑣。

流程控制上,安全性不好界定,很容易對他人的Bug進行誤操作;沒有綜合的評分指標,不好確認修復的優先級別。

7、描述測試用例設計的完整過程?

參考答案:

需求分析+需求變更的維護工作;根據需求得出測試需求;

設計測試方案,評審測試方案:

方案評審通過后,設計測試用例,再對測試用例進行評審;

8、單元測試的策略有哪些?

參考答案:

邏輯覆蓋、循環覆蓋、同行評審、桌前檢查、代碼走查、代碼評審、景泰數據流分析

9、LoadRunner分哪三部分?

參考答案:

用戶動作設計;場錄設計;測試數據分析;

10、LoadRunner 進行測試的流程?

參考答案:

1、測試測試

2、創建虛擬用戶腳本

3、創建運行場景

4、運行測試腳本

5、監視場景

6、分析測試的結果

以上,最好是結合-個案例,根據以上流程來介紹。

11.什么是並發?在lordrunner中,如何進行並發的測試?集合點失敗了會怎么樣? .

參考答案:

在同一時間點,支持多個不同的操作。

LoadRunner中提供IP偽裝,集合點,配合虛擬用戶的設計,以及在多台電腦上設置,可以比較好的模擬真

實的並發。

集合點,即是多個用戶在某個時刻,某個特定的環境下同時進行虛擬用戶的操作的。集合點失敗,則集合點

的才操作就會取消,測試就不能進行。

12、使用QTP做功能測試,錄制腳本的時候,要驗證多個用戶的登錄情況/查詢情況,如何操作?

參考答案:

分析用戶登錄的基本情況,得出一組數據,通過性測試/失敗性測試的都有(根據TC來設計這些數據),然后錄制登錄的腳本,將關鍵的數據參數化,修改腳本,對代碼進行加強,調試腳本。

13、QTP中的Action有什么作用?有幾種?

參考答案:

Action的作用

用Action可以對步驟集進行分組

步驟重組,然后被整體調用擁有自己的sheet

組合有相同需求的步驟,整體操作具有獨立的對象倉庫

Action的種類

可復用Action不可復用Action外部Action

14、TestDirector有些什么功能,如何對軟件測試過程進行管理?

參考答案:

需求管理

定義測試范圍定義需求樹

描述需求樹的功能點測試計划

定義測試目標和測試策略。

分解應用程序,建立測試計划樹。確定每個功能點的測試方法。

將每個功能點連接到需求上,使測試計划覆蓋全部的測試需求。描述手工測試的測試步驟

指明需要進行自動測試的功能點測試執行

定義測試集合。

為每個測試人員制定測試任務和測試日程安排。運行自動測試。

缺陷跟蹤

記錄缺陷

查看新增缺陷,並確定哪些是需要修正的相關技術人員修改缺陷

回歸測試

分析缺陷統計圖表,分析應用程序的開發質量。

 

 

15、你所熟悉的軟件測試類型都有哪些﹖請試着分別比較這些不同的測試類型的區別與聯系(如功能測試、性能測試……) ?

參考答案:Compatibility Testing (兼容性測試),也稱“Configuration testing(配置測試)”,測試軟件是否和系統的其它與之交互的元素之間兼容,如:瀏覽器、操作系統、硬件等。驗證測試對象在不同的軟件和硬件配置中的運行情況。

Functional testing(功能測試),也稱為behavioral testing (行為測試),根據產品特征、操作描述和用戶方案,測試一個產品的特性和可操作行為以確定它們滿足設計需求。本地化軟件的功能測試,用於驗證應用程序或網站對目標用戶能正確工作。使用適當的平台、瀏覽器和測試腳本,以保證目標用戶的體驗將足夠好,就像應用程序是專門為該市場開發的一樣。

Performance testing (性能測試),評價一個產品或組件與性能需求是否符合的測試。包括負載測試、強度測試、數據庫容量測試、基准測試等類型。


免責聲明!

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



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