下屬測試工作總結(jié)中的部分內(nèi)容,寫得不錯(cuò),有些想法。

  一、測試的困惑

  以前我時(shí)常反思,測試組的工作多嗎?我的回答是多。測試小組的工作成果的好壞和工作任務(wù)的多少成正比嗎?終的回答卻并非成正比。我們的測試工作成果往往并不理想,甚至是差。那么為什么事倍功半?這問題很難找到清晰的答案。

  參與了外部培訓(xùn)之后,發(fā)現(xiàn)了自己在對測試的工作有了新層次的理解。對之前工作成果差的問題思考也有了新的方向。“測試的高境界是找出所有BUG嗎?不是,測試的高境界是不需要進(jìn)行測試。為什么不需要進(jìn)行測試?是因?yàn)樗械膯栴}都已經(jīng)在軟件各階段中介入的測試工作中給預(yù)防解決了。由此引申,測試的定位并不是找出BUG,而是預(yù)防BUG。” 這是我培訓(xùn)報(bào)告中的一部分。如果測試的出發(fā)點(diǎn)只為是發(fā)現(xiàn)BUG,那么測試工作將會如何?辛苦的發(fā)現(xiàn)了一個(gè)BUG,之后開發(fā)針對性的修正了這個(gè)BUG,再回重新測試的過程,又會有多少人會重新被卷入,又會有多少BUG因此而產(chǎn)生,又需要花費(fèi)多少時(shí)間,答案可想而知。這是我們忙又不見成果的主要原因。所以改善這個(gè)問題的出發(fā)點(diǎn)是改變對測試工作的認(rèn)識??測試的目標(biāo)并不是為了找出BUG,而是預(yù)防BUG的出現(xiàn)。

  如何理解正確的測試目標(biāo)是預(yù)防BUG的出現(xiàn)。首先可以從軟件測試的階段劃分來看。軟件測試的階段劃分為需求、設(shè)計(jì)、編碼、測試、驗(yàn)收。但按此劃分來定位測試是錯(cuò)誤的。假如在編碼階段完成后測試出的BUG屬于設(shè)計(jì)問題(這也是我們測試工作中經(jīng)常遇到的情況),那么我們已經(jīng)編碼完成的產(chǎn)品要面臨著傷筋動骨的修改,這樣的修改會帶出多少個(gè)新的BUG出現(xiàn)?為這個(gè)修改我們又要重復(fù)的測試我們的新提交版本多少次?想必都有很深刻及慘痛的答案了。由此可以說明需求設(shè)計(jì)階段的測試比編碼階段測試重要的多。在需求上出現(xiàn)的BUG很有可能足以推翻整個(gè)產(chǎn)品。那么如果在需求設(shè)計(jì)階段測試人員能發(fā)現(xiàn)產(chǎn)品設(shè)計(jì)的BUG,那么可以避免了因此而衍生的產(chǎn)品BUG,達(dá)到預(yù)防BUG這種測試?yán)砟畹哪繕?biāo)。

  那么又如何能做好以預(yù)防BUG為目標(biāo)的測試工作!皽y試工作不只是一種技術(shù),也不僅是一種活動。測試工作的成功也不能取決于測試成果,測試的BUG越多并不能證明測試工作做的好,所以由此引申,測試工作要站在團(tuán)隊(duì)的高度來開展,在團(tuán)隊(duì)中做好測試,而不是在測試小組中做好測試!边@是我培訓(xùn)報(bào)告中的另一部分。要做好以預(yù)防BUG為目標(biāo)的測試工作,首先要盡早的參與到項(xiàng)目中,其次是需要各部門及小組的大力支持,與業(yè)務(wù)、項(xiàng)目、代碼人員共同形成團(tuán)隊(duì),在團(tuán)隊(duì)中影響其他小組提高產(chǎn)品質(zhì)量,更好的完成以預(yù)防產(chǎn)品出現(xiàn)BUG為目標(biāo)的測試活動。

  總結(jié)來看,我個(gè)人覺得擁有這樣的測試?yán)砟羁梢越忾_我們的疑惑,帶領(lǐng)我們走出目前的困境。

  二、自動化測試迷失

  隨著工作、發(fā)展、提高等等多方面的需要,我接到了開展自動化測試的研究工作。概念上來說自動化測試是一種測試度量體系,F(xiàn)實(shí)點(diǎn)來說,自動化測試可以為我們自動、無誤的運(yùn)作完成大量且需要重復(fù)執(zhí)行的測試用例。這是多么讓人振奮的概念。甚至可以解開我上文所提到的有關(guān)測試工作的困惑。我很興奮的去展開研究目前流行的自動化測試工具之一QTP。甚至設(shè)計(jì)出了管理中心的三個(gè)重要功能的自動化測試腳本,并且運(yùn)行無誤在自動化測試討論會上興奮的向大家演示。之后還用工具按鍵精靈設(shè)計(jì)出了前端的A類測試用于實(shí)際的測試。但很讓人沮喪的是終這些腳本全被遺棄在電腦硬盤的角落,再也沒派上用場。為什么?因?yàn)樗麄兙S護(hù)起來很困難,因?yàn)樗麄兙帉懰鼈兊臅r(shí)間與實(shí)現(xiàn)的價(jià)值并沒有超過手工測試。這是自動化測試嗎?怎么不可行啊,我有點(diǎn)不太相信這種結(jié)局,所以我再一次困惑了。

  外部培訓(xùn)的老師這樣告訴我們:“我們并沒有理性的看待自動化測試,自動化測試并不是我們看上去的那樣美。首先自動化測試能直接的節(jié)約成本、讓測試人員變輕松的想法是一個(gè)誤區(qū)。因?yàn)樵居糜谑止y試的時(shí)間用來編寫及維護(hù)測試腳本了,而完善的自動化測試腳本編寫或維護(hù)的時(shí)間很可能會超過手工測試的時(shí)間。再者自動化測試腳本用例是測試人員所編寫,自動化測試只能是沿著該測試人員的“足跡”前進(jìn)。所以用自動代測試來發(fā)現(xiàn)更多軟件產(chǎn)品問題的想法也是一個(gè)誤區(qū)。其次并不是所有的測試都能自動化,測試的自動化也不一定是解決問題的佳手段!