天天看點

測試人員在公司中的角色定位

正在閱讀一本很棒的書,《軟體測試經驗與教訓》。幾名國外的軟體測試大師,以大量的測試工作實戰經驗為出發點,總結了深刻而精悍的兩百多條經驗。作者把這些經驗比喻成為波爾多紅酒,鼓勵讀者分散閱讀,帶入自己的工作實際情境,慢慢細品,深入思考。當然還有,不要獨攤波爾多,分享給我的朋友、同僚們!

  《軟體測試經驗與教訓》一書,讨論的第一個話題,就是關于測試人員的角色定位。我對這個話題讨論的個人了解是:清晰認識自己的角色定位,能夠幫助測試人員明确對自己工作目标的預期。而清楚的認識測試人員的角色定位,對于公司、項目的其他成員來說,可以使他們對于測試工作的“期待”更加恰當,即使是“指責”,也更恰如其分。關于這個話題,以下是對于書中部分經驗的了解或讨論。

  “測試員是前燈”

  研發經理和開發人員或許正開着一輛吉普,行進在盤山公路上,測試人員的職責就是做好探路的前燈,哪裡是懸崖,哪裡有險情,前方的路面情況如何……而産品或者項目的關鍵決策,都是基于這些資訊的。測試人員的職責是将關于這一切的盡可能詳細的資訊告知公司或項目的其他成員。

  是這樣的角色:全面搜集、整理、報告資訊

  不是這樣的角色:決策者

  “迅速找出重要的程式問題”

  測試人員很重要的一條使命就是“迅速找出重要的程式問題”。如何做好這點,書中給出了幾條建議。他們看上去很簡單,很質樸,似乎每個人都知道,但是在實際工作方法中有經常性地提醒自己或者潛意識中就使用這幾條建議麼?所謂大道至簡。

  *首先測試經過變更的部分,修改和更新都意味着新的風險

  *首先測試核心功能,測試産品所完成的關鍵和常用功能,測試完成産品基本任務的功能

  *首先測試能力,即每個基本功能是否能用,然後測試可靠性,即深入檢查每個功能在不同條件下的表現

  *首先測試常見情況,使用常用的資料和使用情境。然後測試特殊情況。

  *首先測試影響重大的問題

  *優先測試最需要的部分--對團隊其他成員有重要意義的任何部分的任何問題

  *測試人員對産品、相關軟硬體、産品的最終使用者越了解,就越可能更快地找出重要問題。

  “follow 開發人員”

  為開發人員提供支援,這也是測試人員的一項重要使命。盡可能建立最短、最快的回報環路--開發人員傳遞産品時,馬上進行測試;開發人員修改變更代碼後,馬上測試變更的内容(trunk版本的測試即是此種情況)。在書中,幾位測試大師認為,最理想的情況是,開發人員為了修改測試人員發現的缺陷而忙得團團轉,是開發人員,而不是測試人員,成為項目的瓶頸。當然,老闆可能不會認為這個情況理想:)

  “詢問一切,但不一定外露”

  多提問。做測試時,遇到的情況千變萬化,不可能不遇到問題。如果真的連續地進行測試工作,而沒有任何問題可提,那麼不妨暫停一下手上的測試工作,留給自己一些思考的空間,還是那個論斷,不可能沒有問題。

  書中提到提問的方法,認為直白的提問就如一劑猛藥,會刺激到别人,是以盡量減低劑量,或與米飯同吃(結合其他溝通形式)。這個的确是個不錯的經驗建議,在面對開發人員、産品需求設計人員、實施人員等同僚時,可以盡量采用這樣的提問方式。當然,在面對測試部門同僚、主管時,個人覺得,直接提問會更有效率。

 “測試人員關注缺陷,團隊成員才能關注成功”

  “确認程式正常”永遠不可能是測試人員的使命,測試人員隻能說,“就我所執行的測試來說,産品沒有不正常”。測試人員是團隊中唯一不直接關注成功的角色。測試人員的關注點注定隻能在關注産品缺陷上,而不能在關注證明産品正常上。測試人員關注缺陷,用自己的全部的創造力、精力和技能,尋找産品客觀存在的缺陷,幫助項目團隊更加了解自己的技能和産品風險,将産品不斷改進。否則,這塊關注點,隻能由客戶來關注了。那麼團隊,也就注定失敗。

  是這樣的角色:關注産品缺陷

  不是這樣的角色:關注産品的成功

  “不會發現所有問題”

  測試人員的任務是發現并報告重要的産品缺陷,但是不會發現所有的産品缺陷。如果測試人員覺得自己可以發現所有的産品問題,那麼要麼是産品非常簡單,要麼是測試人員想象力太差。

  知道并承認自己不能做所有的事以後,學會選擇如何使用和配置設定自己的時間。

  “不要期待用測試工作來保證産品品質”

  産品品質來源于建構産品的人。測試人員的測試和缺陷報告,提供的是促進産品品質保證的資訊,但是這種品質保證是來自整個團隊的。

  是這樣的角色:提供關于産品品質的資訊

  不是這樣的角色:保證産品品質

  “永遠别做看門人”

  測試人員不該獨立擁有控制産品釋出的權利。權利即是責任。獨立擁有權利的後果是緻使其他團隊成員心理上放松,并且有了推卸責任的理由--如果産品發版後出現重要問題,就會歸咎于測試人員的把關不嚴。而如果測試人員為了避免這樣的風險,而糾結于反複的完備的測試,那就會延誤産品釋出的計劃時間,引起諸方不滿。是以,産品釋出的權利,還是需要項目經理把握,或者是某種方式的集體決定。

  是這樣的角色:産品品質的測試者和相關資訊的提供者

  不是這樣的角色:決定産品釋出

  “當心扮演過程改進的批評者角色”

  測試時發現種種問題,并且頻繁反複出現時,也許測試人員會厭煩地覺得,要是開發人員能夠認真細緻一些,或許就不會出現這麼多的産品缺陷了。把産品缺陷預防在未發生的時刻,這确實很有意義。但是不一定每件有意義的事情,都是想當然的可行的。事情除了理性的一面,還有情感的一面。就像告訴你的夫妻,怎麼樣的生活才能更有生命的意義。如果嘗試一下就會知道,好的忠告并不是總能被真正接受。問題不在于是否認識到,而在于情感。測試人員可以參與到公司、團隊的整體過程改進中去,但是切記,不要扮演一個“批評者的角色”。因為這涉及同僚間的情感。

  是這樣的角色:資訊提供者

  不是這樣的角色:批評者

繼續閱讀