在迭代的 Sprint 周期中,開發部分可以根據傳統步驟分成編碼和單元測試、重構和集成。需要指出的是,重構和集成是敏捷開發的 Sprint 迭代中不可忽視的任務。如果在新的 Sprint 周期中要對上次的功能加以優化和改進,必然離不開重構和集成。
在每個 Sprint 周期結束前,測試團隊將提交針對該 Sprint 周期或者上個 Sprint 周期中已完成的功能的驗收測試(在實際項目中,測試團隊的進度通常會晚于開發團隊)。這樣一來,開發團隊可以運行驗收測試來驗證所開發的功能目前是否符合預期。當然,這個預期也是在迭代中不斷變化和完善的。
當產品的所有功能得以實現,測試工作基本結束后,就進入了發布周期。此時,測試團隊的任務相對較多。
以上,我們概述了敏捷開發的主要活動。下面我們將對各階段相應的測試活動作詳細的介紹和分析。首先是用戶故事設計和發布階段。
在用戶故事和發布計劃階段,項目經理和產品經理會根據客戶的需求,制定概要的產品發布日程計劃。此時,測試人員可以和開發人員一起學習新的功能,了解客戶的需求。其中,有兩個主要活動:尋找隱藏的假設和設計概要的驗收測試用例。
3.2.1 尋找隱藏的假設
正如前文所述,開發人員通常關注一些重要的系統功能而忽視細節。此外,敏捷開發倡導簡單的實現方案,每個開發 Sprint 周期不可能將功能完美得實現;相反,每個 Sprint 都會增量得開發一些功能。所以,測試人員在最初就需要從各種角度來尋找系統需求,探索隱藏的假設。
項目實例:
Q:這個搜索框對公司的業務有什么價值?
A:搜索框可以為用戶方便得提供商戶的目錄信息。如果越來越多用戶使用這個搜索框,可以增加我們網站的訪問量。