測試基礎面試題


1.你在測試中發現了一個bug,但是開發經理認為這不是一個bug,你應該怎樣解決?

  1. 將問題提交到缺陷管理庫里面進行備案

       2. 要獲取判斷的依據和標准:

  • 根據需求說明書、產品說明、設計文檔等,確認實際結果是否與計划有不一致的地方,提供缺陷是否確認的直接依據;
  • 如果沒有文檔依據,可以根據類似軟件的一般特性來說明是否存在不一致的地方,來確認是否是缺陷;
  • 根據用戶的一般使用習慣,來確認是否是缺陷;

  3. 與設計人員、開發人員和客戶代表等相關人員探討,確認是否是缺陷;

  4. 合理的論述,向測試經理說明自己的判斷的理由,注意客觀、嚴謹,不參雜個人情緒。

  等待測試經理做出最終決定,如果仍然存在爭議,可以通過公司政策所提供的渠道,向上級反映,並有上級做出決定。

 

2. 給你一個網站,你如何測試?

  首先查找需求說明,網站設計等相關文檔,分析測試需求

  制定測試計划,確定測試范圍和測試策略,一般包括以下幾個部分:功能性測試;性能測試;數據庫測試;安全性測試;兼容性測試

  測試用例設計:

功能性測試

  1. 連接測試,連接是否能夠正常跳轉,是否存在空頁面和無效頁面,是否有不正確的出錯信息返回
  2. 提交功能的測試
  3. 多媒體功能能否正常加載和顯示
  4. 多語言支持是否能夠正常的顯示選擇的語言等

界面測試

1. 頁面是否風格統一,美觀

2. 頁面內容是否合理,重點內容和熱點內容是否突出

3. 控件是否正常使用

4. 對於必須和未安裝的控件,是否提供自動安裝或下載的功能

5. 文字檢查

性能測試:並發測試,壓力測試,負載測試

數據庫測試要具體決定是否需要開展,數據庫一般需要考慮連接性,對數據的存取操作,數據內容的驗證等方面

安全測試:

1. 基本登錄功能的檢查

2. 是否存在溢出狀態,導致系統崩潰或者權限泄漏

3. 相關開發語言的常見安全性問題檢查,例如SQL注入問題等

4. 如果需要高等級的安全性測試,確定需要專業安全公司的幫助,外包測試或者技術支持

兼容性測試:瀏覽器的兼容性,操作系統的兼容性,軟件平台的兼容性,數據庫的兼容性

     開展測試,並記錄缺陷。合理的安排調整測試進度,提前獲取測試所需的資源,建立管理體系(例如,需求變更,風險,配置,測試文檔,缺陷報告,人力資源報告等內容)

    定期評審,對測試進行評估和總結,調整測試的內容

 

3.一台客戶端有三百個客戶與三百個客戶端有三百個客戶對服務器施壓,有什么區別?

資源方面:一台客戶端三百個客戶,則會占用更多資源,各線程之間可能會有干擾,影響結果;后者則沒有這個問題。

帶寬:一台客戶端三百個客戶,會占用更多帶寬;后者則要求更寬松

IP 地址的問題:一台客戶端三百個客戶,如果有ip限制,則需要繞過ip限制,如采用ip欺騙。

 

4.軟件生命周期是什么

  軟件生命周期,即軟件開發的全過程,包括可行性研究,需求分析,軟件設計,編碼,測試,發布,維護

 

5.軟件測試分為哪些過程

按照開發階段划分,可以分為單元測試、集成測試、系統測試、驗收測試

單元測試:針對每個單元的測試, 以確保每個模塊能正常工作為目標

集成測試:對已測試過的模塊進行組裝,進行集成測試。目的在於檢驗與軟件設計相關的程序結構問題

確認(有效性)測試:是檢驗所開發的軟件能否滿足所有功能和性能需求的最后手段。有的划分方法中,也將確認測試合並入系統測試中。

系統測試:檢驗軟件產品能否與系統的其他部分(比如,硬件、數據庫及操作人員)協調工作。

驗收(用戶)測試:檢驗軟件產品質量的最后一道工序。主要突出用戶的作用,同時軟件開發人員也應有一定程度的參與。

驗收測試可以分成Alpha測試和Beta測試。Alpha測試是由用戶在開發環境下完成的測試,Beta測試是由用戶在用戶環境下完成的測試。

 

6. 你能不能說下你的3-5年的職業規划?

  1.讓自己的測試基礎知識更加的扎實

  2.更深入的學習自動化知識,包括接口自動化測試方向,並運用到現實工作中

  3.性能,加強對性能測試結果的分析

  4.學會帶領一個團隊

  5.最后,達到測試經理的水平

 

7. 軟件開發模式

  瀑布流:項目計划,需求分析,程序設計,程序編碼,軟件測試,運行維護

  V字流:需求分析,概要設計,詳細設計,編碼

       單元測試,集成測試,系統測試,驗收測試

  w字型:用戶需求,需求分析,概要設計,詳細設計,編碼,集成,實施,交付

                    用戶需求,需求分析,概要設計,詳細設計,單元測試,集成測試,系統測試,驗收測試

  

8.軟件包括哪些,軟件復用什么意思,構件有哪些

軟件:是計算機系統中與硬件相互依存的另一部分,它是包括程序、文檔的完整集合。

軟件復用(Software Reuse):是將已有軟件的各種有關知識用於建立新的軟件,以縮減軟件開發和維護的花費。軟件復用是提高軟件生產力和質量的一種重要技術。早期的軟件復用主要是代碼級復用,被復用的知識專指程序,后來擴大到包括領域識、開發經驗、設計決定、體系結構、需求、設計、代碼和文檔等一切有關方面。

構件:可以被復用的軟件成分一般稱作可復用構件。

 

9.什么是軟件測試?軟件測試的目的和原則

定義:使用人工或自動手段,來運行或測試某個系統的過程

目的在於檢驗它是否滿足規定的需求或弄清預期結果與實際結果之間的差別。

軟件測試的目的

測試是程序的執行過程,目的在於發現錯誤

一個成功的測試用例在於發現至今未發現的錯誤

一個成功的測試是發現了至今未發現的錯誤的測試

確保產品完成了它所承諾或公布的功能,並且用戶可以訪問到的功能都有明確的書面說明。

確保產品滿足性能和效率的要求

確保產品是健壯的和適應用戶環境的

軟件測試的原則

軟件測試應盡早執行,並貫穿於整個軟件生命周期

軟件測試應追溯需求

缺陷的二八定理

嚴格執行測試計划,排除測試的隨意性

 注意合法合理的輸入,也要注意非法的非預期的輸入

檢查程序是否是否做了不該做的

測試應從“小規模”開始,逐步轉向“大規模”

殺蟲劑悖論

關注缺陷的修復

 

10. 目前主要的測試用例設計方法是什么?

  白盒測試:邏輯覆蓋;循環覆蓋;基本路徑覆蓋

  黑盒測試:邊界值分析法;等價類分析法;正交試驗法,錯誤猜測發;因果圖法;狀態裝換測試法;判定表法;測試大綱法;隨機測試;場景法

 

11. 測試用例通常包括那些內容?

    軟件測試用例的基本要素包括測試用例編號、測試標題、前提條件,重要級別、優先級,測試輸入、操作步驟、預期結果,實際結果

 

12. 一份測試計划應該包括哪些內容?(做什么?)

  背景、項目簡介、目的、測試范圍、測試策略、人員分工、資源要求、進度計划、參考文檔、常用術語、提交文檔、風險分析。

 

13.一份測試方案包括哪些內容(怎么做?)

  測試需求的細化,測試組網圖的設計,自動化測試框架的設計,測試數據和測試腳本的設計,測試用例設計的原則等。

 

14.您認為做好測試用例設計工作的關鍵是什么?

  白盒測試用例設計的關鍵是以較少的用例覆蓋盡可能多的內部程序邏輯結果

  黑盒測試用例設計的關鍵同樣也是以較少的用例覆蓋模塊輸出和輸入接口。不可能做到完全測試,以最少的用例在合理的時間內發現最多的問題

 

15.軟件測試的流程

1.需求分析階段:只要就是對業務的學習,分析需求點。

2.測試計划階段:測試組長就要根據SOW開始編寫《測試計划》,其中包括人員,軟件硬件資源,測試點,集成順序,進度安排和風險識別等內容。

3.測試設計階段:測試方案一般由對需求很熟的高資深的測試工程師設計,測試方案要求根據《SRS》上的每個需求點設計出包括需求點簡介,測試思路和詳細測試方法三部分的方案。《測試方案》編寫完成后也需要進行評審。
4.測試方案階段:主要是對測試用例和規程的設計。測試用例是根據《測試方案》來編寫的,通過《測試方案》階段,測試人員對整個系統需求有了詳細的理解。這時開始編寫用例才能保證用例的可執行和對需求的覆蓋。測試用例需要包括測試項,用例級別,預置條件,操作步驟和預期結果。其中操作步驟和預期結果需要編寫詳細和明確。測試用例應該覆蓋測試方案,而測試方案又覆蓋了測試需求點,這樣才能保證客戶需求不遺漏。同樣,測試用例也需要評審。
5.測試執行階段:執行測試用例,及時提交有質量的Bug和測試日報,測試報告等相關文檔。、

 

16.測試術語

  SSR :需求分析文檔

  HLD :  概要設計文檔

  LLD :詳細設計文檔

  BD   :基本設計

  DD  : 詳細設計

  FD  :結構設計 


免責聲明!

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



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