敏捷開發過程當中的測試

Choerodon的測試管理主要爲用戶提供敏捷化的持續測試工具,包括測試用例管理、測試計劃、測試分析等,能夠有效地提升軟件測試的效率和質量,提升測試的靈活性和可視化水平,最終減小測試時間,讓用戶將主要精力放到軟件功能構建上。本文將爲您分享敏捷測試概念及Choerodon在敏捷開發過程當中的測試實踐。git

什麼是敏捷測試

在敏捷開發流程中,測試再也不是瀑布式開發流程的其中一個環節,而是全程參與整個開發流程。開發中能夠經過多種方式來保證產品的質量,不管是原則中的「頻繁交付」,仍是對「可工做的軟件」的度量,或是敏捷開發實踐中的「測試驅動開發」、「行爲驅動開發」,都離不開測試的支持。 固然,敏捷測試對測試人員也提出了更高的要求,對測試人員來講是新的挑戰。github

敏捷測試人員的定義

專業的測試人員,必須有適應變化的能力,理解利用測試記錄需求和驅動開發的思想,才能與技術人員和業務人員展開良好的協做。敏捷測試人員每每具備優秀的技術能力,知道如何與他人合做以實現自動化測試,同時也擅長探索性測試,他們瞭解客戶在作什麼,以此更好地理解客戶的軟件需求。安全

測試人員在敏捷過程的價值體現

  1. 需求討論:測試人員能夠站在客戶角度上來闡述本身的觀點,和產品人員、開發人員等進行充分的交流和討論,使本身在用戶體驗、業務邏輯等等方面的經驗充分體現出來。
  2. 開發過程:測試人員不只扮演「用戶表明」角色,並且能夠及時提供更全面的質量反饋,包括代碼質量、接口一致性等。測試人員不寫代碼,能夠參與代碼複審(code review),將質量問題及時提交給項目組,保證在產品構造的整個過程當中質量受到足夠的關注,提升質量改進的持續性和可視性。
  3. 單元測試:單元測試由開發人員作,測試人員能夠推動開發人員進行單元測試,檢查單元測試狀態。例如確保單元測試達到75%以上覆蓋率,以及幫助開發人員開發出具備良好可測試性的代碼。
  4. 集成測試、端到端(end-to-end)測試、性能測試:由於在敏捷方法中,每每將一個大的系統開發分解成多個小的子系統(模塊/組件),集成測試和端到端(end-to-end)測試顯得更重要。其有效保證整個功能流程的完整、暢通,以及所開發的產品與其任何子系統協調良好。
  5. 迴歸測試:持續迴歸測試,保證產品的穩定性。能夠採用自動化迴歸測試。
  6. 對缺陷進行分析:總結出一些規律,幫助開發人員創建良好的習慣,改進代碼的質量。例如標記出反覆出現的bug,以便於開發總結緣由。
  7. 缺陷優先級:與開發溝通上有直接交流、靈活應對變化,質量控制,什麼bug是重要的,什麼是能夠後期去作,分清bug優先級。

Choerodon在敏捷迭代中的測試流程

1. 需求分析:依據需求文檔提取測試點

經過分析需求描述中的輸入、輸出、處理、限制、約束等,給出對應的驗證內容,並分析各個功能模塊之間的業務順序,和各個功能之間的傳遞信息和數據,對存在功能交互的功能項,給出對應的驗證內容(功能交互測試)。同時須要考慮到需求的完整性,要充分覆蓋軟件需求的各類特徵,包含隱形需求的驗證,好比界面的驗證,帳號惟一性驗證(界面、易用性、兼容性、安全性、性能壓力)。微服務

2. 編寫測試計劃和測試用例

爲項目需求而編制的一組測試步驟,測試數據以及預期結果,以便測試某個程序是否知足客戶需求,測試用例需關聯到對應的issue或者story,測試計劃的內容包含迭代內的所有開發任務。工具

3. 用例評審:確認用例是否覆蓋到各個場景,以及用例是否符合需求

用例評審主要是產品、開發和測試人員,針對測試用例可否用於項目的測試而作的工做。主要是爲了減小測試人員執行階段作無效工做(提交無效問題等),以免三方需求理解不一致。評審按用例的優先級,功能的複雜程度進行;先對優先級高,功能複雜,疑問多的用例進行評審,再評審功能簡單,優先級低的功能點。評審過程當中儘可能作到思路清晰,用最簡潔的語言闡述每個功能點。對於評審過程當中,超過5分鐘沒法肯定結果的問題,能夠記錄下來,做爲會後討論跟進的重點。性能

4. 測試執行

測試執行是執行全部或部分選定的測試用例,並對結果進行分析的過程。測試執行活動是整個測試過程的核心環節,全部測試分析、測試設計、測試計劃的結果將在測試執行中獲得最終的檢驗。單元測試

5. 轉化測試後的bug

將執行完的有bug的測試用例關聯敏捷協做中的缺陷。在敏捷協做中一個缺陷能夠快速定位到測試用例,幫助開發者快速獲取測試結果,實現測試閉環。測試

6. 迴歸bug測試

經過敏捷中的迭代規劃,制定團隊的迴歸方案,積極跟開發人員溝通問題緣由、修復的方案和影響。總體的迴歸bug測試進度計劃中須要包含全部迴歸測試和自動化迴歸測試時間,同時預估好天天的工做量,與實際完成的工做量進行對比,儘早知道測試進度是正常仍是延期,提前控制好風險,從而達到團隊能更好地交付價值的目的。spa

總結

以上咱們回顧了Choerodon豬齒魚敏捷測試在整個項目開發中的基本流程,詳細介紹了各階段存在的主要測試活動。總的來講,敏捷測試的最終目的是持續交付,快速交付可靠的產品。敏捷過程的測試,除了對測試能力的要求以外,還要求測試人員在團隊的協做能力更高。此外,隨着迭代的不斷增長,對自動化測試的能力也有較高要求。設計

但願本文有助於正在使用敏捷模式或者打算使用敏捷模式的團隊更好得理解敏捷測試。

關於豬齒魚

Choerodon 豬齒魚做爲開源多雲應用敏捷全鏈路技術平臺,是基於開源技術Kubernetes,Istio,knative,Gitlab,Spring Cloud來實現本地和雲端環境的集成,實現企業多雲/混合雲應用環境的一致性。平臺經過提供精益敏捷、持續交付、容器環境、微服務、DevOps等能力來幫助組織團隊來完成軟件的生命週期管理,從而更快、更頻繁地交付更穩定的軟件。

更加詳細的內容,請參閱Release Notes和官網。 你們也能夠經過如下社區途徑瞭解豬齒魚的最新動態、產品特性,以及參與社區貢獻:

歡迎加入Choerodon豬齒魚社區,共同爲企業數字化服務打造一個開放的生態平臺。

本篇文章出自 Choerodon豬齒魚社區柴曉燕。
相關文章
相關標籤/搜索