將測試人員整合到敏捷團(tuán)隊(duì)中,這是敏捷之道常常重復(fù)的一條箴言,可我們并沒有認(rèn)真想過這到底意味著什么或者應(yīng)該怎么做。

  團(tuán)隊(duì)中測試人員的角色具體負(fù)責(zé)什么呢?他們要:

  協(xié)助團(tuán)隊(duì)抽取并定義驗(yàn)收條件(或需求)

  提供相關(guān)質(zhì)量信息,而不是通過自動(dòng)化測試、探索性測試(exploratory test)[譯注]來尋找bug

  與客戶一起工作,識(shí)別風(fēng)險(xiǎn)

  在開發(fā)人員測試(單元測試與集成測試)的薄弱環(huán)節(jié)投入更多精力。比如,如果我們知道團(tuán)隊(duì)已經(jīng)完成了對(duì)數(shù)據(jù)層的測試,但是GUI層難于進(jìn)行單元測試,那測試人員應(yīng)該花費(fèi)更多努力在這一層的測試上。

  選編自(Cem Kaner, Johanna Rotheman(pdf),以及Jonathan Kohl)。

  與大多數(shù)人已經(jīng)熟知的傳統(tǒng)測試經(jīng)驗(yàn)大不相同,敏捷團(tuán)隊(duì)中的測試有其自身特點(diǎn)。Jonathan Kohl,是Kohl Concepts的聯(lián)合創(chuàng)始人。如他所說:“不同之處在于:在敏捷項(xiàng)目中,我們可以更快地找到重要的bug。我們更愿意將測試貫穿于開發(fā)過程始終,F(xiàn)在開發(fā)人員們使用可靠的自動(dòng)化測試來讓他們的工作更加嚴(yán)謹(jǐn),我所測試的產(chǎn)品也更加健壯了!

  Antony Marcano是一位敏捷測試獨(dú)立咨詢顧問,他提及了自己學(xué)習(xí)到的一些經(jīng)驗(yàn):

  編寫驗(yàn)收測試需要協(xié)作:尤其是在客戶、測試人員和程序員之間。

  測試人員與開發(fā)人員應(yīng)該互相提升彼此的技能。

  測試任務(wù)應(yīng)該作為sprint backlog的一部分,而不能是單獨(dú)的測試計(jì)劃。

  使用“探索性測試”來產(chǎn)生反饋。

  在修復(fù)bug之前,要先寫自動(dòng)化測試以重現(xiàn)這些bug。

  Simon Baker是Energized Work的聯(lián)合創(chuàng)始人。在他的團(tuán)隊(duì)中,開發(fā)人員編寫絕大部分的驗(yàn)收測試。測試人員從而可以專注于進(jìn)行“探索性測試”,并與Product Owner一起與客戶溝通,并幫助團(tuán)隊(duì)理解用戶(而不僅僅是故事)。開發(fā)人員針對(duì)垂直的切片(故事的小部分)展開工作,以滿足特定的驗(yàn)收條件。當(dāng)切片完成后,開發(fā)人員與測試人員一起仔細(xì)檢查切片,并理解驗(yàn)收測試。團(tuán)隊(duì)將缺陷視為工作線性進(jìn)展的停止點(diǎn)。開發(fā)人員可以在下次切片處理過程中修復(fù)缺陷,或者選擇創(chuàng)建一個(gè)缺陷修復(fù)任務(wù),從而使其不再處于開發(fā)階段。缺陷修復(fù)任務(wù)成為團(tuán)隊(duì)優(yōu)先級(jí)高的任務(wù)。測試人員發(fā)現(xiàn),即使他們與開發(fā)人員都使用同樣的技能,還是要花費(fèi)很多時(shí)間彼此協(xié)作,而整理bug的時(shí)間反而少了。