做測試最高的境界是什么?


      今天參加了單位組織的測試架構師培訓。外部的咨詢老師問了我一個問題:做測試最高境界是什么?我當時給出的倉促回答是:“幫助你所在的組織改善樹立正確的質量觀念;幫助所在建立起有效預防和發現bug的流程體系與技術棧。” 限於時間,這個問題沒有展開深入探討,卻讓我總是忍不住去想它。做測試最高的境界是什么呢?仔細思索后,發現我這個答案還挺不錯的。

      最高境界代表着極致,極致就是在已經達到非常好的時候還在不斷的追尋:我還能做得更好么?如果持續這樣做,在某個時候,一定會產生質的飛躍,讓你跳出原有的框框得到柳暗花明的答案。這樣的例子比比皆是:在人們找到鎢絲代替愛迪生的竹炭纖維作為白熾燈的燈絲以后,后續的工程師做了上千倍愛迪生的努力,也無法讓白熾燈的光電轉換比有效提高了,直到節能燈泡的出現,換了思路,能效提高了一個數量級。

      人們對測試最初的定義就是發現缺陷。大家都會熟悉下面圖中的這條曲線:缺陷發現的越晚,修復的代價就越大。照這個思路來看,發現缺陷越早越好?什么叫早呢?如果是一般的軟件生命周期,那能在需求階段就發現所有缺陷就perfect了。這顯然是天方夜譚,代碼還沒寫呢,你怎么能發現編碼過程中產生的缺陷呢? 缺陷產生於軟件生命周期的各個階段,試想如果在每個階段的初期就能發現這個階段的所有缺陷也是不錯的,但這也是不可能的,再拿編碼過程產生的缺陷來說,當一個方法還沒有被編寫出來,你如何發現它的缺陷呢?解決這個問題有2個思路:

1.階段細分,每個階段的工作再細分(敏捷的思路:工作細分,如scrum模型,它讓每個sprint都能實現可以被測試的特性)  

2. 換個思路,如何能夠做到比檢驗做到更好呢?那就是預防。基於這個理論就有了各種checklist,各種入口評審(相對於本階段是檢驗,相對於下階段是預防),測試驅動開發嚴格意義上也算一種預防的手段。

做到這兩點的本質就是:幫助所在建立起有效預防和發現bug的流程體系與技術棧。

而這不僅僅是靠測試人員本身的力量能夠做到的了,要靠團隊所有人的共同努力才能做到,做測試的同學應該作為推動者和實踐者,把質量意識灌輸到每個團隊成員的意識甚至是潛意識中去(注意:灌輸意識不僅僅是測試同學的責任!)

 

  最后簡要回顧一個小故事:扁鵲是古代名醫,但當人們問到他的時候,他卻認為給人們做保健的大哥是神醫。但在別人的眼里他的大哥只是個普通的郎中。

最后一句話其實不會發生在軟件測試人員身上。你能做到這一點,或者推動做到。就會被大家普遍認可:)IT屆的意識還是很先進的。

     


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM