軟件測試基礎理論知識整理雜論——面試可能會問到的基礎知識問題

該篇文章是從各個網絡資源上或者平時遇到的積累下來整合而成的,不算是原創,僅僅是整理,希望對正在面試的你以及正在準備面試的我有所幫助,有需要補充的請在下方評論,完善文章

1.軟件的三個要素:程序(實行特定功能的代碼)  文檔(支持代碼運行) 數據(支持程序運行一切有關)

2.軟件的產品質量指的是:質量是指實體特性的綜合,表示實體滿足 明確的 隱含要求的能力。

3.軟件測試的目的:

1)驗證軟件是否滿足 軟件開發合同 或者項目開發計劃,系統/子系統設計文檔,軟件需求規格說明,軟件產品說明等規定的軟件質量要求

2)通過測試,發現軟件缺陷  3

爲軟件產品的質量測量和評價提供依據

4.軟件測試的標準4個過程,以及對應的解釋 

1)測試策劃:只要是進行測試的需求分析 測試計劃的編寫

2)測試設計: 依據測試需求,分析並選用,已由的測試用例或者設計新的測試用例,在進入下一個階段工作之前,應該通過,測試就緒評審

3)測試執行,執行測試用例,獲取測試結果 分析並判定 設計結果 

4)測試總結:整理和分析 測試數據 ,評價 測試效果和被測軟件項,描述 測試狀態 最後完成軟件測試報告並通過測試評審

5.測試用例設計的基本原則:

1)基於測試需求的原則

2)基於測試方法的原則

3)兼顧 測試充分性 效率的原則

4)執行用例的可再現性原則

6.什麼是等價類劃分法?

定義:等價類劃分 是在 分析 需求規格說明 基礎上,把程序的輸入域 劃分成 若干個部分,然後再每部分中選取 代表性數據 形成測試用例,步驟:

a)劃分有效等價類,對規格說明 有意義 合理的 輸入數據 所構成的集合

b)劃分無效等價類,對 規格說明 無意義 不合理的 輸入數據 所構成的集合

c) 爲每一個等價類 定義一個唯一的編號

d)爲每一個等價類 設計一組測試用例  確保 覆蓋相應的等價類

6.什麼是邊界值分析法?

定義:邊界值分析法 是針對 邊界值 進行測試的 使用 等於 大於 或者小於邊界值的數據對程序進行測試的方法 就是邊界值分析法。步驟:

a)通過分析 規格說明 找出 所有 可能的 邊界條件

b) 對每一個邊界條件 給出 滿足 不滿足的輸入數據

c) 設計相應的 測試用例

對於滿足邊界值的 輸入 可以發現 計算差錯,對不滿足的輸入 可以發現 域差錯

 7. 軟件的內部質量 ,可以從哪六大特性進行解釋?

六大特性:

功能性:當軟件在指定條件下使用時,軟件產品 提供 滿足 明確的和隱含的能力,包括適合性,準確性,互操作性,安全保密性,依從性

可靠性:在指定條件下使用時 軟件產品維持規定的性能級別的能力;包括,成熟性,容錯性,易恢復性,依從性

易用性:在指定條件下使用 軟件產品被理解被學習 使用和 吸引用戶的能力  包括 易學性 易操作性 吸引性 依從性

效率性:在規定條件下 軟件產品執行其功能時使用合適數量和類別資源的能力;包括 資源利用性 和效率依從性   

維護性:軟件產品 可以被修改的能力可能包括 糾正 改進 軟件對環境 需求 和功能規格說明變化的適應 包括,易分析性,易改變性,穩定性,易測試性,依從性

可移植性:軟件產品 從一種環境遷移到另外一種環境的能力,包括,適應性,易安裝性,共存性,易替換性,可移植性的依從性。

8. 軟件按照生命週期可以分爲哪些測試?

單元測試,集成測試,配置項測試(也叫作軟件合格性測試或確認測試),系統測試,驗收測試。迴歸測試可以分佈在上述每個測試類別中,貫穿整個軟件生命週期,所以單獨分類描述,

9.每一個階段測試基於的文檔是什麼?

單元測試:軟件設計文檔。

集成測試:軟件結構設計文檔。

配置項測試:需求規格說明書(接口需求規格說明)。

系統測試:用戶需求(研製合同或系統需求)。

驗收測試:軟件研製合同(用戶需求或系統需求)

10.軟件的准入和準出條件分別有哪些?

 准入條件:

1)具有測試合同(或者項目計劃)

2)具有軟件測試所需各種文檔

3)所提交的 被測軟件受控

4)軟件源代碼 正確通過 彙編或者 編譯

準出條件:結束軟件測試 工作一般 應該達到下面的要求

1)已按要求 完成了合同(或項目計劃)所規定的軟件測試任務

2)實際測試過程遵循了 原定的軟件 測試計劃 和軟件測試說明

3)客觀 詳細 地記錄了 軟件測試過程 和軟件測試中發現的所有問題

4)軟件測試文檔 齊全 符合規範

5)軟件測試的全過程 自始至終 在控制下進行

6)軟件測試中 問題 異常 有合理的解釋 或正確 有效的處理、

7)軟件測試工作 通過了測試評審

8)全部測試軟件,被測軟件,測試支持軟件,和評審結果 已經納入配置管理

11.什麼是靜態測試 什麼是動態測試?

1)靜態測試:又稱爲靜態分析結束,其基本特徵是 不執行被測軟件,根據檢查列表,對需求分析說明書,軟件設計說明書,源程序做結構檢查,流程圖分析等找出軟件錯誤,靜態測試一般採用人工分析(針對文檔),也可以用靜態分析測試工具來進行(代碼掃描)

2)動態測試:其基本特徵是執行被測試程序。通過執行結果,分析軟件可能出現的錯誤 ,一般由人工設計程序測試用例,也可以由測試工具做檢查和分析。

12. 迴歸測試的目的是什麼?

1) 測試軟件變更之後,變更部分 的正確性 針對變更需求的 複合型

2)測試軟件變更之後 軟件原有的 正確的功能 性能和其他規定的要求的 不損害性。

 13.什麼是黑盒測試,什麼是白盒測試?

1)黑盒測試:又稱爲功能測試,數據驅動測試,或者基於規格說明的測試,這種測試不必要了解 對象的內部邏輯結構,而是根據需求說明書中的功能來設計測試用例

2)白盒測試:又稱,結構測試。邏輯測試或者基於程序的測試,這種測試 應瞭解軟件程序的內部構造,並且根據內部構造 來設計測試用例。

一般單元測試採用白盒測試, 配置項或系統採用黑盒測試。

14.軟件調試和測試的區別?

調試:定位錯誤所在位置,並修改這些錯誤

測試:發現軟件中的缺陷,提高軟件質量

15.軟件測試的4項基本準備活動。

1)軟件環境的準備(乾淨 純淨的操作系統)

2)軟件的安卓不熟(服務器操作 Linux操作數據庫,jeeweb環境,tomcat .net 環境IIS

3)測試數據的準備

4)業務操作流程。

16. 什麼是基線?

已經正式通過審覈批准的軟件階段性產品,是一個階段性的開發版本,是一個具有里程碑意義的階段性版本,此版本,可以作爲 下一步 開發的基礎。

17.持續的集成測試

1)對每一個 即將成爲極限的版本 灰盒測試,

2)今早和不斷的進行軟件測試

18.冒煙測試:段時間內 針對某個模塊【剛新增的模塊 或者剛剛修改完的模塊】開展某個專項測試(功能測試)

19.迴歸測試:長時間,針對某個指定的版本【剛新增的模塊 以及與他相關的其他模塊,進行專項的測試活動】

          

一:功能測試基本理論

1.測試需求:測試的規格說明書,主要作用是定義待測試的模塊 功能模塊的測試要點

2 測試計劃:測試過程中的綱領性文件,對測試活動中的測試環境,測試方法,測試時間人員安排。

3.測試用例:是測試需求的細化,是一羣元素的集合,主要包含,用例編號,操作步驟/測試數據,預期結果,實際結果,判定,覆蓋需求。

4 缺陷報告:將軟件的實際情況 測試用例的預期結果相比較,記錄問題報告單。

5.測試的基本過程:四個過程,測試策劃,測試設計,測試執行,測試總結

6.測試所需要的文檔:測試需求,測試計劃,測試用例,缺陷報告,測試報告(可能編寫)

7.軟件測試的定義:

官方定義:是在規定的條件下,對軟件程序進行操作,以發現其中的錯誤爲目的,對軟件質量進行評估,從而提高軟件質量。

老師給的測試定義:是在未知軟件,程序模塊,某個版本是否有錯誤的情況下,從客戶的角度出發,依據需求規格說明書等文檔,選擇科學的方法,設計出正確的業務操作流程,儘可能多的模擬用戶對軟件的各種操作,儘可能多的發現軟件中的缺陷,並且將缺陷記錄報告,提交給相關開發人員修復,最終達到提高軟件質量的目的。

8 測試跟調試的區別:測試,發現 軟件找那個的缺陷,提高軟件質量;調試,定位程序中間已經發現的錯誤所在位置,並修改這些錯誤。

9 軟件測試工作開展之前有思想基本準備活動:測試環境的準備(保證乾淨,純淨的一個測試環境);完成軟件的安裝和部署;準備測試數據;業務操作流程的熟悉。

10.什麼叫做基線:已經正式通過審覈批准的軟件階段性產品,是一個階段性的開發版本,是一個具有里程碑意義的階段性版本,此基線版本,可以作爲下一步 開發的基礎,

11 什麼叫持續集成測試:對每一個即將成爲基線的版本都要進行灰盒測試,儘早和不斷的進行軟件測試

12 敏捷測試:只有項目組和開發的過程,採用敏捷開發,什麼時候採用敏捷測試?開發人員編寫的需求規格說明書的階段,採用敏捷測試,第一從客戶的溝通中獲得文字客戶的需求,第二基於需求 開發靜態頁面原型,改動成本小,容易,直觀體現需求,第三測試人員在這個階段,對開發需求進行需求評審。

13.什麼是冒煙測試:短時間內針對指定的 剛剛新增的 或者剛剛修改完Bug的模塊,進行某個專項測試

14.什麼是迴歸測試:長時間,針對某個指定的模塊,剛剛修改完bug的模塊,以及與之相關的模塊 是否公用一張數據庫表,進行專項的測試活動。

15.對於輸入框 填寫需求時,要注意那些收集需求方式?類型  長度和範圍  特殊於要對,對於按鈕,要特別注意當前模塊的變化,以及相關性

16.對於測試前提:第一是程序版本編號,第二是程序文檔,如果沒有程序文檔,可以儘量使用,已有文檔,用戶手冊,還有跟客戶或者開發進行有效的溝通,或者根據常識,或者同類型軟件,界面提示信息,第三,是測試數據的準備和還原

17.瀏覽器的兼容性分爲哪二個部分:首先在不同的瀏覽器中,頁面內容的顯示兼容,針對質量特性的 易吸引特性 展示專項 針對非功能特性,測試需求和測試用例的編寫,其次是在不用的瀏覽器中,頁面功能操作的兼容,針對質量特性 適合性 易操作 容錯性,測試需求和測試用例的編寫。

18.軟件測試按照技術劃分:

1)黑盒;黑盒測試,又稱功能測試,或者數據驅動測試 給予規格說明書的測試,這種測試,不必瞭解程序的內部情況代碼,而是依靠需求規格說明書中的功能 來設計測試用例

2)白盒;白盒測試,是一種基於代碼的測試,是一種測試用例的設計方法,已知軟件內部工作過程,通過測試證明內部操作是否符合設計規格要求,他通過檢查軟件內部的邏輯結構,對軟件中的邏輯路徑進行覆蓋測試,在程序不同的地方設立檢查點,檢查程序運行狀態是否一致。

3)灰盒;敏捷的思想,持續集成,多次迭代,比如白盒的靜態掃描,和黑盒的動態用例設計

19.軟件測試按照階段劃分:單元測試;集成測試;系統測試,確認測試(軟件合格性測試和配置項測試);系統測試,驗收測試。

20.軟件測試按照方法劃分:靜態測試,動態測試

21.軟件測試按照特性劃分:GUI界面測試(易用性),兼容測試,幫助文檔測試,性能方面,負載測試,壓力測試。

22.軟件測試的模型(指導測試實施工作流程)

23.軟件測試模型v模型:細化測試活動,測試最一階段

24.軟件測試模型w模型:細化測試活動,測試工作前面,儘早測試

25.軟件測試模型螺旋模型:細化測試活動,測試工作前移,儘早測試,每一個模塊開發都是一個迭代的過程,客戶評估,強調用戶的參與 溝通

26.軟件測試模型H模型:弱化文檔,靈活,每一個模塊開發測試靈活,測試準備(不分先後),測試執行,達到測試就緒點,用例執行時,可以修改。測試計劃在軟件測試活動開展,也可以修改

27.黑盒測試 需求收集 用例編寫 需要關注那些地方?輸入

防止輸入非法數據;從需求的收集和用例的設計;長度或範圍 類型和特殊要求點擊業務功能的實現;從需求收集和用例設計【預期結果】;當前模塊 相關性。

28黑盒測試:功能模塊增刪改查

1、“添加模塊表單的內容,輸入元素的value固定(默認) valu隨機(長度 類型 要求)點擊元素,當前模塊 相關性

2、“修改模塊”先查詢 後更改(添加要求)2個步驟

3、“刪除模塊選擇數據和 點擊刪除,1)是否有刪除提示       2)刪除參考6個用例

4、“查詢模塊”:

1)是否能夠根據查詢條件 準確的找到 待查詢的內容       

2)長度 不關注       

3)類型 非數字,數字,時間(bug       

4)特殊要求 特殊字符     

5)正交法 用例個數固定

29.什麼是好的測試用例?

首先 編寫依據 基於需求 基於方法 兼顧效率 體現再現性,然後,此用例能夠幫助發現新的bug

30.測試過程管理工具相比與硬盤保護有什麼優點?web頁面 表單填寫數據庫保存,方便進行內容保存 收集,統計,資源共享,此類管理工具很多,QC/TD(名氣大),bugfreee,禪道,或者企業自己開發。

31Bug的分類有哪些,

1By design 設計本如此 

2Duplicat 重複提交的Bug 

3)Not  Repro 無法重現的bug 稱爲三種無效Bug .

aExterna,因爲外部因素導致的問題(瀏覽器 操作系統, 第三方)

b)Fixed 問題已修改  

c)Postponed, 延遲處理 後續版本 

d)won’t fix  是個Bug  太過於細小 不值得修改。稱爲四種有效bug 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章