不平凡軟件,始于2014
鄭州軟件開發(fā)之一個(gè)合格的軟件工程師你應(yīng)該知道的十條法則
對于初涉敏捷的測試工程師來說,如何定位自己的角色和職責(zé)、如何從傳統(tǒng)開發(fā)模式成功遷移到敏捷模式、如何跟上短迭代的節(jié)奏等等問題都迫切地想要找到答案。鄭州軟件開發(fā)! 資深敏捷實(shí)踐者Lisa Crispin和Janet Gregory在《敏捷軟件測試:測試人員與敏捷團(tuán)隊(duì)的實(shí)踐指南》一書中,列舉了敏捷測試工程師的十條法則,對讀者或許有借鑒意義。
提供持續(xù)反饋(Provide Continuous Feedback)既然是測試驅(qū)動(dòng)敏捷項(xiàng)目,那么很顯然反饋在敏捷團(tuán)隊(duì)中占據(jù)重要的地位。測試人員的傳統(tǒng)角色就是“信息提供者”,這使得她天生就對敏捷團(tuán)隊(duì)很有價(jià)值。敏捷測試人員的最大貢獻(xiàn)之一是幫助產(chǎn)品負(fù)責(zé)人或者客戶采用實(shí)例和測試的形式描述清楚每一個(gè)用戶故事的需求。然后,測試人員與團(tuán)隊(duì)同事將這些需求轉(zhuǎn)化為可執(zhí)行的測試。測試人員、開發(fā)人員和其他團(tuán)隊(duì)成員盡快運(yùn)行這些測試,并不斷接收有意義的反饋。為用戶創(chuàng)造價(jià)值(Deliver Value to the Customer)
敏捷開發(fā)就是在較小的版本發(fā)布中提供客戶目前最迫切需要的功能。這通常意味著限定范圍。我們經(jīng)常在客戶團(tuán)隊(duì)中遇到較酷功能的需求。任何人都可以質(zhì)疑這些內(nèi)容,但是測試人員會(huì)判斷其對故事的影響,因?yàn)樗麄冃枰紤]測試后果。促進(jìn)面對面的溝通(Enable Face-to-Face Communication)敏捷測試人員需要總覽全局。我們可以在當(dāng)前迭代中發(fā)布最重要的功能,稍后再完善。如果讓新功能偷偷混進(jìn)來,就面臨一無所獲的風(fēng)險(xiǎn)。如果過于關(guān)注邊邊角角,而忽略了核心功能,就無法提供業(yè)務(wù)所需的價(jià)值。
敏捷測試人員從客戶的角度思考每一個(gè)故事,但是也理解實(shí)現(xiàn)功能相關(guān)的技術(shù)和局限性。他們可以幫助客戶和開發(fā)人員達(dá)成共識。業(yè)務(wù)人員和軟件人員經(jīng)常使用不同的語言。他們不得不找到一些共同點(diǎn)來協(xié)作。測試人員可以幫助他們達(dá)成一種共通語言。勇氣(Have Courage)面對面的溝通是不可替代的。敏捷開發(fā)依賴于持續(xù)的合作。就像其他敏捷團(tuán)隊(duì)成員一樣,從事測試工作的人會(huì)不斷尋找客戶和技術(shù)團(tuán)隊(duì)成員來討論和合作。當(dāng)敏捷測試人員對某個(gè)隱藏的假設(shè)或者誤解的需求產(chǎn)生懷疑時(shí),她會(huì)與客戶和開發(fā)人員討論。如果處于不同地點(diǎn)的人需要交談,他們會(huì)試圖尋找創(chuàng)造性的方式替代面對面、實(shí)時(shí)的交流。
當(dāng)最初加入敏捷團(tuán)隊(duì)或者當(dāng)前的團(tuán)隊(duì)開始過渡到敏捷開發(fā)模式時(shí),通常會(huì)產(chǎn)生恐懼感,并且存在大量的問題需要答案。我們到底如何才能在如此短的時(shí)間內(nèi)完成每一個(gè)用戶故事的測試任務(wù)?測試如何跟上開發(fā)的節(jié)奏?如何確定多少測試就夠了?又或者你是功能測試經(jīng)理或者質(zhì)量過程經(jīng)理,不清楚在敏捷團(tuán)隊(duì)中如何定位自己的角色,沒人知道答案。敏捷測試人員需要勇氣找到這些問題的答案,但是除此之外還有其他原因。我們需要勇氣允許自己失敗,至少我們會(huì)短暫失敗,并從中學(xué)習(xí)教訓(xùn)。在由于構(gòu)建版本不穩(wěn)定導(dǎo)致一次迭代失敗之后,我們開始尋找方法以確保這種事情不再發(fā)生。簡單化(Keep It Simple)
簡單并不意味著容易。對于測試人員來說,這意味著采用能夠找到的最輕量級的工具和技術(shù)恰到好處地測試。工具可以簡單到只是一張電子表格或者清單。需要自動(dòng)化回歸測試,但是應(yīng)該把它們分解到最底層以獲取快速反饋。甚至簡單的冒煙測試也可能滿足面向業(yè)務(wù)的測試自動(dòng)化。持續(xù)改進(jìn)(Practice Continuous Improvement)
想辦法把工作做得更出色是敏捷測試人員思想的一部分。當(dāng)然,整個(gè)團(tuán)隊(duì)都應(yīng)該具有這樣的想法,因?yàn)槊艚莸暮诵膬r(jià)值就是團(tuán)隊(duì)總是嘗試更出色地工作。測試人員參加團(tuán)隊(duì)總結(jié)會(huì),評估做得好的方面和需要增加和改變的方面。測試人員把測試問題擺到整個(gè)團(tuán)隊(duì)中解決。團(tuán)隊(duì)通過采取過程改進(jìn)實(shí)踐最大程度地改善測試和所有其他領(lǐng)域。對于更大的問題,團(tuán)隊(duì)一次只關(guān)注一到兩個(gè)問題,以確保徹底解決了實(shí)際問題,而不是表面文章。響應(yīng)變化(Respond to Change)
響應(yīng)變化是敏捷實(shí)踐的重要價(jià)值,但是我們發(fā)現(xiàn)這對測試人員來說卻是最困難的概念之一。測試人員渴望的是穩(wěn)定,所以他們會(huì)說:“我已經(jīng)測試過了,任務(wù)完成了”。持續(xù)的需求變化是測試人員的噩夢。但是,作為一名敏捷測試人員,我們不得不擁抱變化。周三,我們可能期望啟動(dòng)故事A和B,下周五做C。但是到了周五,客戶重新設(shè)定了優(yōu)先級,現(xiàn)在需要故事A、X和Y。只要我們持續(xù)與客戶交流,就能處理這些變化,因?yàn)槲覀兣c團(tuán)隊(duì)的其他成員保持同步。自我組織(Self-Organize)
敏捷測試人員是自組織敏捷團(tuán)隊(duì)的組成部分。團(tuán)隊(duì)文化貫徹于敏捷測試?yán)砟?。?dāng)開發(fā)人員、系統(tǒng)管理員、分析員、數(shù)據(jù)庫專家和客戶團(tuán)隊(duì)持續(xù)關(guān)注測試和測試自動(dòng)化,測試人員就會(huì)獲得全新的視角。自動(dòng)化測試很困難,但是當(dāng)整個(gè)團(tuán)隊(duì)都在為此努力時(shí)就會(huì)簡單得多。當(dāng)大家具有多重技能和多層次視角時(shí),任何測試問題都更容易解決。關(guān)注人(Focus on People)
堅(jiān)持敏捷理念的敏捷團(tuán)隊(duì)對所有團(tuán)隊(duì)成員一視同仁。敏捷測試人員對團(tuán)隊(duì)做出了特有的貢獻(xiàn),開發(fā)團(tuán)隊(duì)認(rèn)識到要想更加成功,團(tuán)隊(duì)需要擁有測試技能和背景的人。舉例來說,一位熟練的探索性測試人員可能會(huì)發(fā)現(xiàn)自動(dòng)化功能測試無法察覺的問題。一些測試經(jīng)驗(yàn)豐富的工程師會(huì)提出其他人想不到的重要問題。測試知識是任何一個(gè)成功團(tuán)隊(duì)的組成部分。享受樂趣(Enjoy)
在我們看來,測試人員的理想團(tuán)隊(duì)是:所有成員協(xié)作,從項(xiàng)目的開始一直到結(jié)束,利益相關(guān)者與開發(fā)團(tuán)隊(duì)共同工作,整個(gè)團(tuán)隊(duì)負(fù)責(zé)質(zhì)量和測試。相信很多人都認(rèn)為每個(gè)人都應(yīng)該在工作中找到樂趣。敏捷開發(fā)珍視敏捷測試人員對工作的激情。
眾所周知,敏捷軟件測試工作不是一件輕松的事情,讀者在敏捷軟件測試實(shí)踐中存在哪些優(yōu)秀的經(jīng)驗(yàn),歡迎分享。
不平凡軟件,鄭州軟件開發(fā)公司,鄭州軟件開發(fā),鄭州軟件定制,鄭州微信開發(fā),鄭州進(jìn)銷存定制開發(fā),鄭州OA系統(tǒng)開發(fā),鄭州軟件開發(fā)公司
相關(guān)新聞換一組