軟體測試 - V 模型
軟體開發遵循軟體開發生命週期 (SDLC) 的原則,其中每個階段都以 V 形的方式依次進行。V 模型的另一個名稱是驗證和確認。它還指出,只有在特定階段的所有測試活動成功完成之後,才能結束 SDLC 中的每個階段。
什麼是 V 模型?
V 模型用於提供 SDLC 的系統化和視覺化表示。在這裡,測試執行逐漸發生。它在軟體的每個開發階段都包含一個測試階段。例如,如果開發了特定功能,則在完成該功能的測試後,下一個階段開始。因此,它確保在進入後續階段之前,開發和測試齊頭並進。
V 模型的重要性是什麼?
V 模型的重要性如下所示:
- 它有助於儘早發現錯誤。透過在開發過程中進行驗證和確認階段,採用了早期測試。在 SDLC 初始階段發現的缺陷比在後期階段發現的缺陷修復成本更低。
- 它使開發和測試階段能夠在 SDLC 的每個階段並行進行。因此,它有助於對整個軟體工程過程採取系統化和平衡的方法。
- 它可以防止採用大爆炸測試方法,在這種方法中,測試在 SDLC 結束時進行。
- 由於開發和測試階段同時進行,因此它創造了一個各個團隊之間協作與合作的環境,這最終有助於每個人更好地理解需求、設計、開發等。
- 透過從 SDLC 的最初階段開始採用嚴格的驗證和確認活動,軟體質量在很大程度上得到了提高。
V 模型的不同階段
SDLC 中的測試階段受軟體的驗證和確認控制。驗證過程用於檢查整個軟體或系統或其一部分是否根據開發需求、標準和規範開發。
確認過程用於檢查整個軟體或系統或其一部分是否根據使用者需求開發。它主要確認軟體是否能夠解決客戶的需求。
V 模型中的驗證階段
V 模型中的驗證階段如下所示:
使用者需求分析
在此階段,從客戶的角度理解軟體需求以及它如何幫助解決使用者的問題。它涉及與客戶進行詳細的討論,以瞭解他們對軟體的具體需求和期望。功能需求和非功能需求都包括在內。使用者驗收測試用例是根據這些使用者需求建立的。客戶、專案經理、業務分析師主要參與此階段。
系統需求
在此階段,使用者需求被轉換為軟體的功能。在此基礎上,確定所需的硬體、配置和資源。系統測試計劃也已確定。業務分析師和開發人員主要參與此階段。
高階設計
在此階段,軟體功能被分解成多個單元。透過列出所有硬體、軟體、程式語言、資料庫詳細資訊等,建立高階技術設計文件。它是透過將系統需求作為輸入來建立的。整合測試用例是根據此高階設計文件建立的。架構師、開發人員、資料庫管理員等主要參與構建高階設計。
低階設計
在此階段,開發人員根據高階設計文件提出各個單元及其與其他單元通訊的詳細架構或設計(也稱為低階設計文件或 LLD)。它包括有關如何根據業務規則管理、儲存、記錄和交換資料的資訊。單元測試用例是根據低階設計文件建立的。
編碼
開發人員根據低階設計文件開始為軟體及其各個單元編寫程式碼。
V 模型中的確認階段
V 模型中的確認階段如下所示:
- 單元測試 - 在此階段,開發單元測試計劃並用於檢測單元級別的程式碼中的錯誤。
- 整合測試 - 在此階段,各個單元被整合,然後測試它們之間的通訊。
- 系統測試 - 在此階段,測試整個軟體以檢查它是否按要求工作。驗證功能和非功能需求。
- 使用者驗收測試 - 在此階段,在類似於生產的環境中執行測試。執行此操作以驗證軟體是否滿足所有客戶需求,並檢查它如何處理現實場景。
下圖顯示了 V 模型的各個階段:
何時使用 V 模型?
V 模型用於以下列出的場景:
- 它用於需求明確且清晰的小型專案,而不是大型專案。
- 它用於軟體驗收標準正確制定的專案。
- 它適用於擁有所需技術專長的資源豐富的專案。
V 模型的優點
V 模型的優點如下所示:
- 它是一個系統化和有條理的模型,每次處理一個階段。
- 它僅適用於需求明確的小型專案,而不是大型專案。
- 它在每個階段都採用驗證和確認,從而提高軟體質量。
- 每個階段都有特定的交付成果和評審,因此專案管理可以輕鬆完成並進行準確跟蹤。
- 由於從 SDLC 的初始階段就採用了測試,因此 bug 檢測和修復變得容易且經濟高效。
- 它很簡單。
V 模型的缺點
V 模型的缺點如下所示:
- 在敏捷框架中,需求是動態的,但是 V 模型沒有靈活的方法,只能在需求明確定義的情況下采用。因此,在任何需求略有修改的專案中,它可能無法被採用。
- 它不適用於存在任何需求變更風險的大型複雜專案。
- 它需要花費時間,因為在測試和文件方面投入了大量精力。
- 它沒有迭代任何階段的範圍。
- 它需要大量的文件。
V 模型的原則是什麼?
V 模型基於驗證和確認。V 模型的原則如下所示:
- **從大到小** - 根據此原則,應持續進行測試。它應該從需求分析階段開始。
- **過程和資料完整性** - 根據此原則,應執行測試,以便過程和資料協同工作以實現專案的正確完成。
- **可擴充套件性** - 根據此原則,V 模型可以應用於任何 IT 專案,無論其規模、複雜性和花費時間如何。
- **交叉引用** - 根據此原則,需求和進行的測試任務之間應該存在直接對映關係。
- **清晰的文件** - 根據此原則,開發人員、測試人員和支援團隊應進行適當的文件記錄。
結論
這總結了我們對軟體測試 V 模型教程的全面概述。我們從描述什麼是 V 模型、V 模型的重要性、V 模型的不同階段、何時使用 V 模型、V 模型的優缺點以及 V 模型的原則開始。
這使您對軟體測試 V 模型有了深入的瞭解。明智的做法是不斷練習您所學到的知識,並探索與軟體測試相關的其他知識,以加深您的理解並拓寬您的視野。