當測試人員證明了應(yīng)用程序充滿了bug時,她正在做一份令人滿意的工作還是糟糕的工作?從一些開發(fā)人員的角度看,那是一份糟糕的工作??瓷先ズ芸尚?,項目經(jīng)理責備測試人員拖延了產(chǎn)品的發(fā)貨期,開發(fā)人員(通常是開玩笑地)抱怨說“測試人員對程序太粗暴了”。很顯然,沒有比bug數(shù)量更能代表成功的測試了。以下是一些關(guān)于測試人員如何和開發(fā)人員建立成功的關(guān)系的技巧。
?
當我以作為一個軟件測試人員開始我的職業(yè)生涯時,我就意識到在開發(fā)人員和測試人員之間正在進行的對抗。我根本沒有花時間和精力就確信這種情況是非常普遍的。我收到了來自開發(fā)人員的各種不友好的回應(yīng),我認為所有的測試人員都在他們的職業(yè)生涯中經(jīng)歷過這些事。?
從冷漠的聳肩到明顯的敵意(有時會用同情的微笑掩飾),一個測試人員不得不忍受來自開發(fā)人員的許多態(tài)度。很難保持一個積極的態(tài)度。但是保持我們的優(yōu)先的正直,并且向前推動高質(zhì)量的項目是由我們自己決定的。?
我從Cem Kaner的《Testing Computer Software》里挑出一句很好的話:“最好的測試人員不是那些發(fā)現(xiàn)最多bug的人,或使最多開發(fā)人員尷尬的人。最好的測試人員應(yīng)該是能夠使最多的bug得以修復(fù)的人。”
?原文:“The best tester is not the one who finds the most bugs or who embarrasses the most developers. The best tester is the one who gets the most bugs fixed.”?-經(jīng)典。
?
那么我們可以做什么呢?
?
熱忱并且耐心(Be Cordial and Patient?)
作為一個測試人員,你或許發(fā)現(xiàn)使開發(fā)人員信服你發(fā)現(xiàn)的缺陷是非常困難的。通常,如果一個測試人員找到了一個bug,程序員將準備10個理由。有時讓開發(fā)人員接受他們的代碼是有缺陷的(并且是其他的人發(fā)現(xiàn)的)這個事實是很困難的。
?開發(fā)人員需要來自測試小組的支持,測試小組可以保證發(fā)現(xiàn)的新bug是值得關(guān)注的,健康的并且對于使產(chǎn)品更好是非常重要的。一個人性的方法是經(jīng)常幫助測試人員更多的了解編程人員。相信我,不用多久,相同的一個人將站在你身邊了并且笑著指出引起bug的錯誤。熱忱將幫助開發(fā)人員對你的錯誤報告說“Yes”。這是重要的第一步。
?
處事老練(Be Diplomatic?)
試著巧妙地表述你的發(fā)現(xiàn),并且不帶任何責備地解釋bug。“我確信這是一個很小的bug,你不用花多少時間就可以處理掉。到目前為止這還是一個不錯的程序。”開發(fā)人員將會跳起來并且擁抱你的bug。
?用一種心理方法。有時表揚一下開發(fā)人員的工作。為什么大多數(shù)開發(fā)人員不喜歡我們的錯誤報告的原因非常簡單:就是他們認為我們在詆毀他們的辛勤工作。有些測試人員只在出現(xiàn)問題的時候才和開發(fā)人員溝通。對于大多數(shù)開發(fā)人員而言,軟件是他們自己的孩子,而你只是一個妨礙他們的外人。我告訴我的開發(fā)人員因為他們我才存在于公司,而且由于我的存在,他們的工作才得以繼續(xù)。測試人員和開發(fā)人員之間的關(guān)系是一種共生及互惠的關(guān)系。
不要害怕尷尬(
Don’t Embarrass?
)
沒有人喜歡被指出錯誤。這是人類的天性。試著解釋修復(fù)那個特別的bug的需要勝于只是用龐大的bug報告向開發(fā)人員開火。一連串的缺陷不只會激怒開發(fā)人員,而且會使你的辛苦工作對他們來說是無用的。?
正象一個人不可能獨自測試完一個程序一樣,開發(fā)人員也不能設(shè)計程序沒有任何錯誤,而且在其他事情發(fā)生之前,他們需要先了解清楚。有錯誤是預(yù)料之中的事,他們也是過程中的一個正常的部分。
?
勝敗乃兵家常事(You Win Some, You Lose Some?)
我知道有些測試人員盡可能將自己的錯誤報告強硬。他們甚至不聽開發(fā)人員關(guān)于為什么不能修復(fù)一個錯誤和不能實現(xiàn)一個功能的解釋。嘗試一些可以讓自己放松的方法。做到開發(fā)人員身邊和他一起分析錯誤的優(yōu)先級和嚴重程度。如果開發(fā)人員在其不愿變更的背后有一個合理有效的解釋,試著理解他。只是確信了解了要在什么地方劃定界限以保護你產(chǎn)品最終的質(zhì)量。
?
謹慎一些(Be Cautious?)
外交手段和適應(yīng)能力不能替代謹慎的需要。開發(fā)人員經(jīng)常會找借口說因為他們沒有意識到(或者你沒有告訴他們)那個錯誤有多嚴重所以他們拒絕修復(fù)它。用足能夠清楚展示風險和問題嚴重性的方法設(shè)計你的錯誤報告和測試文檔。甚至更好的辦法是召開一個會議并且向他們解釋那些問題。?
一個聰明的測試人員是在傾聽和執(zhí)行之間保持平衡的人。如果開發(fā)人員不能使你信服錯誤不應(yīng)該被修復(fù),那么你的責任就是使他信服要修復(fù)錯誤。