測試過程需不需要踐行敏捷?
原文請點選
。
測試過程在瀑布式開發中作為開發流程中的一個環節,只能在實現軟體基礎後開始執行,這種模式很大程度上導致了人力資源的浪費。而在敏捷開發模式中,為了解決人力資源浪費的問題,團隊的開發過程需要踐行敏捷,同樣,測試階段也要踐行敏捷。
測試過程有沒有必要性?
測試人員如同食品生產的質檢員,能夠依據交付成果檢驗產品的完成標準,並對產品判定“合格”與否。也就是說,測試人員需要測試產品的各功能點,對出現 BUG 的部分進行彙總分析,最終提交到開發人員手上。
假若產品的交付並未經過測試這一步驟,那麼我們就無法保證交付成果是符合使用者需求的。換句話說,面對一輛並未經過質檢的剛出廠的車,你敢開嗎?
如何讓測試過程變得敏捷起來?
1. 提高開發過程中的質量
在敏捷開發過程中,測試不再只是在某一特定階段內進行,而是貫穿於整個開發流程中去。也就是提高產品開發的內建質量——團隊中各職能成員都要對最終交付的產品質量負責,測試人員當然也不例外。
- 適當減少在一個迭代中的工作量
在一個迭代過程中,如果產品需要做的功能點太多,就導致團隊成員的任務量過滿:開發人員會由於趕進度而忽視了程式碼的規範性要求;測試人員會因為測試出的BUG 太多而不斷進行“開發—測試”的返工,從而增加人力成本。
因此,適當減少一個迭代週期中的工作量,才能讓開發、測試人員將更多的精力投入到提高程式碼質量、提高測試效率中去。
- 達到測試的完成標準
產品完成的定義(Definition of Done )主要從兩方面來說:
首先,測試用例針對每個已經完成的使用者故事。這意味著測試人員需要熟悉每一個使用者故事,並能夠針對使用者故事構建相對應的測試用例。測試用例可以分為正面測試用例和反面測試用例,以便更好地佐證其標準的準確性。
其次,執行並透過全部測試用例。測試人員在構建完整的測試用例後,還需要不斷地更新、修改。客戶需求的變動也應該在第一時間在告知測試人員,以便測試人員及時更改測試用例。執行並透過全部的測試用例後,產品負責人將產品交付客戶。
- 測試人員的多職能
敏捷團隊要求測試人員必須是多職能的。傳統專案中,工作人員職能單一,因此無法實現技能互通,這大大降低了各環節的生產效率。敏捷團隊中最重要的一個特徵就是“跨職能”:團隊成員擁有多種技能,當某一環節需要更多的人手時,其他成員可以暫代這一位置。當然,跨職能是指成員要掌握多種技能,但並非團隊成員都需要精通各種技能。
因此,敏捷團隊中測試人員也需要是多職能的。這就意味著,測試人員不僅需要精通測試,還要掌握其他環節所需的技能。
- 程式碼集體所有權
程式碼集體所有權意味著程式碼歸整個開發團隊所有,並非單獨所有。當測試環節發現問題的時候,其他測試或開發人員可以看到並修改程式碼的任意部分。程式碼集體所有權能夠有效地提高團隊開發效率,降低BUG 風險。
- 結對程式設計
結對程式設計通常是由兩個開發人員一起,而測試人員與開發人員一起進行結對程式設計主要體現在構建自動化測試程式中。在這種情況下,測試人員主要負責測試架構的合理性以及簡單的程式碼編寫,而開發人員則需要保證程式碼的高質量。開發人員與測試人員進行結對程式設計不僅會提高開發人員的測試意識,還會提高測試人員的程式碼編寫能力,更有助於敏捷團隊的形成。
2. 提高測試的效率
手動測試是一件十分枯燥、乏味的工作,當然,也是一件效率低下的工作。那麼,如何提高測試的效率呢?
- 優先順序排序
測試任務同開發任務一樣,都需要進行優先順序的排序。先進行優先順序高的測試任務,能夠在無法保證測試周期的前提下,影響不到整體開發進度。
- 自動化測試
提高測試效率,首先會想到的就是進行自動化測試。自動化測試較大的優勢是能夠讓程式進行一些大量的機械操作,以便減少測試人員消耗在手工測試上的時間,提高測試效率。提高測試的效率,能夠加快測試周期,在較短的週期內執行更多的測試。
關於測試過程需不需要踐行敏捷這一問題,答案當然是:需要。首先,讓測試過程變得敏捷起來,能夠解決團隊中只有開發人員踐行敏捷的弱點。其次,透過測試過程敏捷化,也能夠更好地提升整個敏捷團隊的工作效率。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69982050/viewspace-2723114/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 中興通訊測試專案實踐:敏捷測試特性文件的交付過程實踐探討敏捷測試
- 敏捷測試的方法與實踐敏捷測試
- 敏捷建模對統一過程的改造實踐敏捷
- 敏捷開發過程敏捷
- 軟體效能測試有哪些測試過程?
- 敏捷測試VS傳統測試對比,6招玩轉敏捷測試!敏捷測試
- 系統測試-從研發到測試過程
- 敏捷測試實踐:測試工程師不能不懂的迭代覆盤敏捷測試工程師
- 敏捷宣言 + 測試管理敏捷
- ORACLE儲存過程中建立子過程的測試!Oracle儲存過程
- 軟體測試面試過程解析面試
- 從傳統測試轉向敏捷測試敏捷測試
- 敏捷開發與測試敏捷
- 敏捷測試是什麼?敏捷測試
- 向敏捷測試轉變敏捷測試
- 破解敏捷測試的迷思敏捷測試
- 滲透測試對app安全測試實戰過程分享APP
- 敏捷測試自動化課程初定6月25、26日敏捷測試
- APP自動化測試過程概述APP
- [原創]儲存過程效能測試儲存過程
- 全面的儲存過程 測試可用儲存過程
- WCDMA測試庫故障處理過程
- 回顧專案測試全過程,測試如何回答 “測完了嗎?”
- 開發商談手遊測試發行過程的關鍵因素
- 軟體測試技術基礎學習之測試過程
- 敏捷團隊的最佳測試實踐:自動化金字塔敏捷
- 軟體測試裁員後進入硬體行業做測試的過程和小感觸行業
- 敏捷軟體過程的侷限性敏捷
- iPhone認證手機殼需透過1米跌落測試iPhone
- 軟體測試模型-敏捷模型模型敏捷
- 敏捷測試關鍵成功因素敏捷測試
- 敏捷開發中的測試敏捷
- 軟體測試中不需要測試的八件事
- Mask RCNN測試過程經驗總結CNN
- Keepalived配置和測試過程for linuxLinux
- 我的測試儲存過程程式碼儲存過程
- 效能測試過程中最佳化-3:
- Testacular:Google開源的JavaScript測試執行過程管理工具GoJavaScript