軟體測試的目的

2021-06-18 19:58:52 字數 1766 閱讀 6347

軟體測試的目的是以最少的人力、物力和時間找出軟體中潛在的各種錯誤和缺陷,通過修正各種錯誤和缺陷提高軟體質量,迴避軟體發布後由於潛在的軟體缺陷和錯誤造成的隱患所帶來的商業風險,一句話就是規避風險。

乙個好的測試用例在於發現從前未發現的錯誤;乙個成功的測試是發現了從前未發現的錯誤的測試。 所以更為合適的定義是:測試是為發現錯誤而執行程式的過程。

軟體測試的目的是證明、檢測、預防。

證明:1)    獲取系統在可接受風險範圍內可用的信心。

2)    嘗試在非正常情況和條件下的功能和特性。

3)    保證乙個工作產品是完整的且可用或可被整合的。

檢測:1)    發現缺陷,錯誤和系統不足。

2)    定義系統能力和侷限性。

3)    提供元件、工作產品和系統的質量資訊。

預防:1)    通過將測試活動提前介入到軟體生命週期中,盡早的發現並消除前期研發階段引入的缺陷,以防止前期缺陷遺留並放大到後續環節。

2)    通過對發現的缺陷進行分析,找出導致這些缺陷產生的流程上的不足,通過改進流程,預防同類缺陷再次產生。

對於如何處理測試中發現的錯誤,將直接影響到測試的效果。只有正確、迅速、準確地處理這些錯誤,才能消除軟體錯誤,保證要發布的軟體符合需求設計的目標。在實際軟體測試過程中,對於每個bug都要經過測試、確認、修復、驗證等的管理過程。

錯誤跟蹤管理系統為了正確跟蹤每個軟體錯誤的處理過程,通常將軟體測試發現的每個錯誤作為一條條記錄輸入制定的錯誤跟蹤管理系統。

缺陷跟蹤管理軟體在功能上各有特點,可以根據實際情況選用。當然,也可以自己開發缺陷跟蹤軟體。

為乙個缺陷跟蹤管理系統,需要正確設計每個錯誤的包含資訊的字段內容和記錄錯誤的處理資訊的全部內容。字段內容可能包括測試軟體名稱,測試版本號,測試人名稱,測試事件,測試軟體和硬體配置環境,發現軟體錯誤的型別,錯誤的嚴重等級,詳細步驟,必要的附圖,測試注釋。處理資訊包括處理者姓名,處理時間,處理步驟,錯誤記錄的當前狀態。

正確的資料庫許可權管理是錯誤跟蹤管理系統的重要考慮要素,一般要保證對於新增的錯誤不能從資料庫中刪除。

軟體錯誤的狀態新資訊(new):測試中新報告的軟體缺陷;開啟 (open):被確認並分配給相關開發人員處理;修正(fixed):開發人員已完成修正,等待測試人員驗證;拒絕(declined):拒絕修改缺陷;延期(deferred): 不在當前版本修復的錯誤,下一版修復關閉(closed):錯誤已被修復;bug管理的一般流程測試人員提交新的bug入庫,錯誤狀態為new.高階測試人員驗證錯誤,如果確認是錯誤,分配給相應的開發人員,設定狀態為open.如果不是錯誤,則拒絕,設定為declined狀態。

開發人員查詢狀態為open的bug,如果不是錯誤,則置狀態為declined;如果是bug則修復並置狀態為fixed.不能解決的bug,要留下文字說明及保持bug為open狀態。

對於不能解決和延期解決的bug,不能由開發人員自己決定,一般要通過某種會議(評審會)通過才能認可。

測試人員查詢狀態為fixed的bug,然後驗證bug是否已解決,如解決置bug的狀態為closed,如沒有解決置狀態為reopen.軟體錯誤流程管理要點為了保證錯誤的正確性,需要有豐富測試經驗的測試人員驗證發現的錯誤是否是真正的錯誤,書寫的測試步驟是否準確,可以重複。

每次對錯誤的處理都要保留處理資訊,包括處理姓名,時間,處理方法,處理意見,bug狀態。

拒絕或延期錯誤不能由程式設計師單方面決定,應該由專案經理,測試經理和設計經理共同決定。

錯誤修復後必須由報告錯誤的測試人員驗證後,確認已經修復,才能關閉錯誤。

加強測試人員與程式設計師的交流,對於某些不能重複的錯誤,可以請測試人員補充詳細的測試步驟和方法,以及必要的測試用例。

軟體測試的目的

軟體 測試的目的決定了如何去組織 測試。如果測試的目的是為了盡可能多地找出錯誤,那麼測試就應該直接針對軟體比較複雜的部分或是以前出錯比較多的位置。如果測試目的是為了給終端使用者提供具有一定可信度的質量評價,那麼測試就應該直接針對在實際應用中會經常用到的商業假設。不同的機構會有不同的測試目的 相同的機...

軟體測試的目的

測試的目的是什麼呢?這是乙個看起來很簡單 不太值得討論的問題,但往往這樣的問題其實是很難回答的,比如人生的意義是什麼?好,現在我們就來,列舉一下我們經常聽到的對這個問題的回答 軟體測試的目的是盡可能發現並改正被測試軟體中的錯誤,提高軟體的可靠性。這個定義聽起來很正確,但用它來指導測試會帶來很多問題。...

軟體測試 軟體測試的定義 軟體測試的目的

軟體測試的定義 軟體測試已有了行業標準 ieee ansi 1983年ieee提出的軟體工程術語中給軟體測試下的定義是 使用人工或自動的手段來執行或測定某個軟體系統的過程,其目的在於檢驗它是否滿足規定的需求或弄清預期結果與實際結果之間的差別。這個定義明確指出 軟體測試的目的是為了檢驗軟體系統是否滿足...