官术网_书友最值得收藏!

1.對敏捷軟件測試的理解

敏捷測試的定義

Wikipedia對敏捷測試的定義:

Agile testing is a software testing practice that follows the principles of agile software development.1

譯文:敏捷測試是一種遵循敏捷軟件開發原則的軟件測試實踐。

這是通過一種敏捷的做事方法,讓團隊協作更緊密、工作效率更高,確保以可持續的速度頻繁地交付客戶所期望的業務價值。

敏捷測試與傳統測試的區別

傳統模式是把軟件開發分為軟件需求、軟件開發(設計&編碼)、軟件測試、軟件發布等階段,一般利用里程碑的方式對各階段進行明確定義。軟件測試是研發過程中的一個階段,而且一般都屬于項目的最后階段;測試團隊都是立場比較明確,與其他團隊之間的溝通都較為正式;測試以需求為依據,要求有需求規格,對自動化測試不做要求;測試計劃做得比較詳細,對測試活動都會做好周密的安排;需求方確定需求后,在中間環節參與較少。

在敏捷模式里,相對傳統模式,軟件測試不再是一個獨立的階段,測試是融入在軟件研發過程中的一個組成部分,發生在每一次迭代中,也包含所有類型的測試,如單元測試、集成測試、系統測試、驗收測試等。測試人員與開發人員協作更緊密,非正式的溝通成為了一種常態;測試以最終用戶為準,輔以用戶場景或用戶故事作為測試的依據;測試追求快速高效,自動化測試在測試中扮演了及其重要的角色,敏捷測試人員輔以探索性測試跟蹤核心業務場景;敏捷測試擁抱變化,測試計劃比較靈活,一般都按業務價值交付順序執行;需求方需求定義后,參與每一次產品演示,確認每一次迭代產物,全程參與項目。

典型的敏捷軟件研發過程

在敏捷的軟件研發過程中,敏捷測試人員利用他們的專業知識從客戶那獲取需求所包含的業務行為,與開發團隊協作,將這些行為轉化為指導編碼的可執行規范。

敏捷測試人員參與用戶故事拆分,遵循比爾·維克(Bill Wake)的INVEST原則,即一個合適的用戶故事應該是獨立的(Independent)、有價值的(Valuable)、可討論的(Negotiable)、小的(Small)、可估算的(Estimable)和可測試的(Testable)。2

測試人員參加需求說明會和計劃會:產品經理給項目人員串講用戶故事,在這個過程中項目人員提出自己的建議和想法,并充分討論。需求討論清楚后,大家用敏捷牌估算工作量參與每日站會:開發過程中每天早上有一個大約15分鐘的站會,告知各自完成的工作、遇到的問題、接下來的工作及需要配合的人員測試人員組織產品演示會:對每次迭代的產物提交評審,向需求方進行演示,對需求進行確認參與每次迭代復盤會議:對整個迭代過程進行總結,并舉行評優及獎勵活動

主站蜘蛛池模板: 敦煌市| 林芝县| 六盘水市| 雷州市| 凤城市| 淅川县| 临江市| 罗源县| 山东省| 尼木县| 永清县| 长岭县| 临西县| 安乡县| 自贡市| 红安县| 康保县| 凭祥市| 南阳市| 涡阳县| 延寿县| 陈巴尔虎旗| 松阳县| 洪泽县| 宽城| 尼木县| 民县| 安远县| 肥乡县| 达拉特旗| 夏河县| 衢州市| 富蕴县| 厦门市| 西乡县| 福清市| 那曲县| 磴口县| 浦城县| 增城市| 宁河县|