軟件測試是伴隨著軟件的產生而產生的,早期軟件開發規模較小,因此軟件測試常常由開發人員自己完成。隨著軟件和 IT 技術的飛速發展,軟件趨向大型化、高復雜度,軟件的質量越來越重要,軟件測試不僅是一個發現錯誤的過程,而且還成為軟件質量保證(SQA)的主要職能。
作為一名軟件測試人員,即便在面對一個很小的軟件項目時,也需要全面考慮問題,包括硬件環境、操作系統、產品的軟件配置環境、產品相關的業務流程、用戶的并發容量等等。下面我們將從需求分析、測試計劃、測試用例、測試執行、缺陷管理、輸出測試報告六個方面來分享如何進行軟件測試管理。
需求分析
軟件測試的過程管理并不僅僅限于測試階段,所有的測試都是基于需求的,在需求分析階段,測試團隊要依據需求文檔提取測試點。
? 通過分析需求描述中的輸入、輸出、約束等內容,對各個需要滿足的功能點給出對應的驗證內容;
? 通過分析各功能模塊之間的業務順序以及各功模塊之間傳遞的信息和數據,對存在功能交互的功能項給出對應的驗證內容;
? 考慮到需求的完整性,還需要充分覆蓋軟件需求的各種特征,包含隱性需求的驗證,比如界面的驗證,注冊賬號的唯一性驗證等。
測試計劃
在需求分析階段提取測試點后,測試團隊下一階段的主要任務就是確定各測試階段的目標和策略,編寫測試計劃,明確要完成的測試活動,評估完成活動所需要的時間和資源,設計測試組織和崗位職權,進行活動安排和資源分配,安排跟蹤和控制測試過程的活動。
測試計劃的主要內容包括以下幾點:
(1)測試階段:單元測試、集成測試、系統測試等
(2)測試類型:黑盒測試軟件測試用例包括哪些內容,接口測試,UI自動化測試,接口自動化測試,性能測試等
(3)測試時間:需求分析起止時間,設計測試用例的起止時間,執行測試的起止時間
(4)測試執行人:創業型公司由于人員少的情況,很可能以項目(模塊)劃分測試負責人
(5)列出測試對象中將接受測試或將不接受測試的那些性能和功能
(6)列出可能會影響測試設計、開發或實施的某些假設、所有風險或意外事件及所有約束
測試計劃不一定要盡善盡美,也不是一成不變的,測試計劃一定要切合實際,根據項目特點、公司實際情況來編制,也要根據實際情況的變化而不斷進行調整,以滿足實際測試要求。
測試用例
測試用例是執行測試的依據,將測試系統的操作步驟用文檔的形式描述出來,讓軟件測試的行為具體化,來核實軟件產品是否滿足項目需求。
測試用例的設計方法主要有黑盒測試法和白盒測試法。黑盒測試也稱功能測試,主要針對軟件界面和軟件功能進行測試。白盒測試又稱結構測試、透明盒測試、邏輯驅動測試或基于代碼的測試,需要全面了解程序內部邏輯結構、對所有邏輯路徑進行測試。
測試用例編制完成后還需要組織專家進行用例評審,用例評審是一個查漏補缺的環節,在于補充測試思路,提升測試質量。
測試執行
測試用例確定之后,我們就可以搭建軟件測試環境,執行測試用例了。測試過程包括五大部分,分別為:單元測試、集成測試、確認測試、系統測試、驗收測試。
單元測試:對軟件中的最小可測試單元進行檢查和驗證。與其他測試不同,單元測試可看作是編碼工作的一部分,大部分由程序員完成。
集成測試:也叫組裝測試或聯合測試。在單元測試的基礎上,將所有模塊按照設計要求(如根據結構圖)組裝成為子系統或系統,進行集成測試。
確認測試:又稱有效性測試。有是在模擬的環境下,運用黑盒測試的方法,驗證被測軟件是否滿足需求規格說明書列出的需求。
系統測試:對整個系統的測試,將硬件、軟件、操作人員看作一個整體,檢驗它是否有不符合系統說明書的地方。
驗收測試:是技術測試的最后一個階段,也稱為交付測試。目的是確保軟件準備就緒,并且可以讓最終用戶將其用于執行軟件的既定功能和任務。
缺陷管理
當測試人員發現軟件中存在的 bug 之后,我們還需要對這些缺陷進行統一管理。
(1)確定缺陷優先級:在評估缺陷的優先級時,可以從單個或多個維度評估,通常情況下可從影響范圍和嚴重級別這兩個常用的維度評估。
(2)及時同步缺陷狀態:按優先級安排好之后就可以制定修復計劃并開始修復,當修復完成時,要及時將修復信息同步給相關的測試人員、用戶,這一過程可以借助缺陷管理軟件來完成。
輸出測試報告
除了缺陷修復,缺陷分析也同樣重要。通過追蹤分析缺陷產生的原因、反思回溯缺陷產生的各個階段,輸出測試報告,來持續地改進測試管理流程。
一般來說,測試報告中主要包括以下五個部分:
測試概覽:包括測試人員、起止時間、所屬項目和迭代等。
缺陷描述:描述缺陷發生時的環境、現象及缺陷產生的影響。
復現路徑:完整地描述缺陷復現的路徑,可以采用流程圖形式,若有多個復現路徑需要標注清楚。
缺陷原因:針對缺陷現象及復現路徑,采用 5W1H 分析法逐層深入分析缺陷產生的原因,提煉出今后開發測試過程需要關注的點。
缺陷思考:微觀上思考是否真正解決了缺陷,并對代碼做全方位的驗證,對相關模塊做關聯測試。宏觀上梳理歷史上類似的缺陷及相關架構,以此改進缺陷管理的流程。
在軟件測試管理過程中,我們還可以借助專門的工具來保證軟件測試順利進行。以研發項目管理工具 ONES 為例:ONES 支持測試用例與需求、任務關聯,測試計劃與迭代關聯,形成測試流程閉環。對于未通過的用例可快速創建缺陷任務,讓缺陷任務在測試與研發團隊間高效流轉,還可以統計項目缺陷分布,自動生成測試報告,快速反饋版本質量,沉淀問題與經驗。
ONES 支持各類質量統計報表
如果您對 ONES 感興趣的話,歡迎點擊文章右上角的「免費試用」,或直接與我們的解決方案專家溝通軟件測試用例包括哪些內容,了解和評估 ONES 如何幫助您的團隊更進一步。