該篇文章是從各個網絡資源上或者平時遇到的積累下來整合而成的,不算是原創,僅僅是整理,希望對正在面試的你以及正在準備面試的我有所幫助,有需要補充的請在下方評論,完善文章
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,禪道,或者企業自己開發。
31.Bug的分類有哪些,
1)By design 設計本如此
2)Duplicat 重複提交的Bug
3)Not Repro 無法重現的bug 稱爲三種無效Bug .
a)Externa,因爲外部因素導致的問題(瀏覽器 操作系統, 第三方)
b)Fixed 問題已修改
c)Postponed, 延遲處理 後續版本
d)won’t fix 是個Bug 太過於細小 不值得修改。稱爲四種有效bug