1)定義:
反應軟體實體 滿足明確的和隱含的需求 的能力特性的綜合。
國家標準:
(1)軟體產品能滿足 給定需要的性質和特性的總體 如:符合規格說明書
(2)軟體具有所期望的各種屬性的組合程度
(3)顧客和使用者覺得軟體滿足其綜合期望的程度
(4)確定軟體在使用過程中滿足顧客預期要求的程度
2)軟體質量的屬性
軟體能夠符合各種精確的功能以及效能需求,符合文件化的開發標準,則這個軟體質量就是高的。
軟體能夠處理例外和異常的情況,具有足夠的容錯性和糾錯能力,則這個軟體質量就是高的。
因此,軟體的質量實際上是各種複雜屬性的組合,定義乙個軟體的質量其實就是為這個軟體定義一些列的質量屬性。
質量屬性可以理解為軟體能不能。。。有沒有。。。
人們通常用軟體質量模型來描述軟體的質量屬性
國家標準:
軟體質量模型分為外部質量模型,內部質量模型,使用質量模型
外部質量模型:軟體的功能型,可靠性,符合開發標準等(從使用者的觀點看軟體有沒有符合某些東西)
內部質量模型;軟體的效率性等(從專業的角度看軟體的執行效率怎樣等)
使用質量模型:軟體在規定的環境下進行規定的操縱是否能完成
3)軟體的度量
軟體生命週期大致可分為三個階段(測試角度):定義軟體質量的要求,實現軟體質量的要求,測試軟體是否達到了要求
外部度量:在使用和測試軟體的過程中,通過觀察軟體的行為,執行等匯出軟體的度量,從而評價軟體的質量
內部度量:在設計和編碼的過程中,通過規格說明書等中間產品測量內部的質量特性
4)影響軟體質量的主要因素
主要因素有三個:開發軟體的組織,開發過程以及開發過程中使用的方法和技術
2.軟體測試的概念
1)軟體測試的定義:
(1)在規定條件下執行系統或構件的過程,觀察並記錄結果做出評價
(2)分析軟體專案的過程,檢測bug並評估軟體專案的特性
2)軟體測試的目的:
(1)測試的目的是證偽----發現程式中各種各樣的錯誤
(2)測試就是建立一種信心,確信程式能夠按預期的設想執行---在規定的環境中執行軟體的所有功能
軟體測試是為了保證軟體質量
乙個好的測試用例在於它能發現至今未發現的錯誤
乙個成功的測試用例是發現了至今未發現的錯誤的測試
3)軟體測試的原則:
(1)應當把 今早的和不斷的進行軟體測試 作為座右銘
(2)測試用例應由輸入資料和對應的預期輸出資料組成
(3)程式設計師應避免測試自己的程式
(4)在設計測試用例時,應包括合理的和不合理的輸入條件
(5)充分注意測試中的集群現象
(6)嚴格執行測試計畫,排除測試的隨意性
(7)應當對每乙個測試結果做全面的檢查
(8)妥善保管相關文件
3.軟體的缺陷和錯誤
1)軟體的缺陷(bug)主要有幾種
(1)沒有實現規格說明書要求的內容
(2)實現了規格說明書沒有要求的內容
(3)出現了規格說明書指明不應該出現的錯誤
(4)沒有實現規格說明書中沒有明確指出但是應該實現的目標
(5)軟體難以理解,不易使用
以開發乙個計算器為例子:
(1)說明書規定必須準確無誤的實現加減乘除,而軟體按下+號卻反應或計算結果錯誤
(2)說明書中沒有要求實現取餘運算,而軟體實現了
(3)說明書規定永遠不會出現宕機等情況,如果隨意亂敲鍵盤軟體無法接受輸入的數字
(4)計算器不會隨著電池的電量出現計算結果偏差,說明書中雖然沒有明確說明,但是這是預設的,也是必須實現的功能
(5)布局位置不好或者難以看清等
2)軟體缺陷的級別:
致命的嚴重的
一般的微小的
3)軟體缺陷的狀態:
活動狀態:問題未解決
已修正狀態:通過了單元測試等
非活動狀態:確認了缺陷不復存在
保留狀態:由第三方產品引起的缺陷
4)軟體缺陷的產生原因:
技術問題,團隊工作,軟體本身等
5)軟體缺陷的構成:
功能缺陷
系統缺陷
加工缺陷
資料缺陷
**缺陷
4.軟體測試的心理學和經濟學
1)心理學
軟體測試更適合被看做乙個檢視發現程式中錯誤的破壞性的過程
測試人員應該有良好的測試心態和明確的測試目標
2)經濟學
(1)黑盒測試
又稱為資料驅動測試 輸入/輸出驅動測試
測試目標與程式的內部機制無關
測試資料完全**於規格說明書
(2)白盒測試
又稱邏輯驅動測試
檢測程式內部的邏輯結構等
3)選擇測試用例的時候要遵守的經濟型準則
根據程式的重要性和發生故障產生的後果來確定測試等級
盡可能做到用少的測試用例來發現更多的錯誤
5.軟體質量保證
質量保證是乙個有組織,有計畫的活動,他向人們提供證據說明程式正在按質量要求執行
軟體質量保證是通過對軟體有計畫的進行 各種評審和審核 來 驗證和確認 軟體是否符合標準
軟體的驗證和確認:
驗證是用資料證明人們是否在爭取的製造產品
確認是用資料證明人們時候製造了正確的產品
軟體測試技術 測試的基本概念
1 定義 反應軟體實體 滿足明確的和隱含的需求 的能力特性的綜合。國家標準 1 軟體產品能滿足 給定需要的性質和特性的總體 如 符合規格說明書 2 軟體具有所期望的各種屬性的組合程度 3 顧客和使用者覺得軟體滿足其綜合期望的程度 4 確定軟體在使用過程中滿足顧客預期要求的程度 2 軟體質量的屬性 軟...
軟體測試 基本概念
1.什麼是軟體測試 軟體測試是使用人工或自動的方法,來執行或者測量軟體系統的過程,以驗證軟體系統是否滿足使用者需求,並找出與預期結果的差異。2.軟體測試與除錯的區別 1 目的不同 測試的目的是為了發現程式中的缺陷,除錯的目的是為了定位並且解決程式中的問題。2 參於的角色不同 測試主要由測試人員和開發...
軟體測試 基本概念
1.什麼是軟體測試?2.軟體測試人員需具備的素質 為什麼要選擇軟體測試 3.什麼是需求?4.什麼是軟體缺陷 bug 5.什麼是測試用例 test case 6.軟體的生命週期 7.軟體測試的生命週期 總結驗證軟體功能是否滿足使用者需求。發散性思維,逆向思維,探求多項答案。對軟體測試這份工作有濃厚的興...