這又是那個山峰了。門檻很低,但通往精通的道路卻很艱難。
在通往測試山峰的入口,我們倚仗的是這樣一個事實:測試的很多方面都很容易掌握。大多數人都可以學得有模有樣。甚至只要將一點點常識應用于輸入的選擇,就可以,我出缺陷。這個層次的測試就如同在桶里釣魚,簡單到足以讓任何人都認為自,自己很聰明。然而過了入口以后,道路迅速陡峭起來,而測試知識變得越來越晦澀難懂。我們發現有人擅長于此,我們稱這些人為“有天賦的人”,并欣賞他們的本能。
難道一定要依靠本能么?對于那些看起來不具備特長的人們,是否存在著一條翻越山峰的途徑?是否可以以某種方法傳授測試技能以培養出更多的專家呢?為認為這座山峰是可以通行的,而這一章正是我關于應該如何走這條路的筆記,你可以在自己的職業生涯中加以應用。這并不是一份食譜配方,一份職業生涯烹調書。不過你可以做一些事情來加速你的職業成長。但是,正如你可能已經猜到的,真正是說來容易,做起來難。
上山
測試職業的早期階段主要是為征服測試山峰的漫長攀登做準備。我所能給出的最好的建議是從兩個方面來思考問題。對于你參與的每一個項目,都有兩部分(不一定相等)的任務。第一部分的任務是保證當前的測試項目獲得成功。而第二部分的任務是學習你應該做些什么以便使下一個測試項目更加容易。我把它稱為“測試今天的項目,準備明天的項目”。如果你做每一個項目把它都分割成為上述的兩半,那么幾乎可以保證你能持續獲得進步。這樣,你就可以隨著每一個參與的項目逐漸成長為更優秀的測試人員。
現在就讓我們來關注第二部分的任務------為下一個項目做準備。我們需要注意三個概念:重復、技術和漏洞。
重復
做任何一件事,絕不要重復兩次而不意識到或質疑這其實是個問題。我希望所有年輕的測試人員都牢記這一點。我見過很多初學者,他們在單調的任務上浪費了太多的時間,比如,設置測試機器,配置測試環境,在實驗室里安裝待測試的應用程序,選擇一個產品版本來測試-這些任務列表可以變得很長,最后你會發現真正花在測試軟件上的時間少得可憐。
這是許多新手常犯的錯誤。他們沒能看到他們日復一日所做的工作的重復本質,兒當他們意識到這種重復時,幾個小時已經過去了,而在這幾個小時內他們沒有做任何實際的測試工作。關注這些重復勞動,并且留意由此造成的真正的軟件測試工作時間的流逝。為了能翻過測試的山峰,必須做一個測試人員應該做的工作,而不是實驗室管理員或者測試機管理員的工作。
測試自動化是解決重復勞動的方案,也是本章稍后的主題。
技術
測試人員常常會對軟件失效進行分析。分析缺陷時,我們從開發人員的失敗中學習如何編寫可靠的代碼。我們也分析那些被我們忽略的缺陷。在應用程序上市以后,客戶就會開始報告缺陷,我們將要面對處理一大堆失效的情形并尋找其中的重要缺陷。用戶報告的每一個缺陷都說明我們的流程用問題,我們的測試知識還不夠完善。
但是分析我們的成功也同樣重要,兒許多新入職的測試人員卻沒能利用這個唾手可得的資源。我們在測試中找到的每一個缺陷都說明我們的的測試流程正在有效工作,都是一次成功。我們需要緊緊抓住這種絕好的機會,只有這樣才能使成功不斷的重復下去。
運動隊常常這樣做,他們會觀看比賽錄像,并分析每一個動作為什么奏效或者為什么不奏效。我清楚地記得一個小故事,我的一個朋友拍下了我兒子踢足球的一些照片。其中一張照片記錄了她踢球的瞬間,那個球超過對方守門員成功進球了。當我把它給我兒子看時,我之處他站立的那條腿的姿勢非常完美,他踢球的腳尖緊繃且出球點在鞋帶間恰到好處的位置上。他盯著那張照片很長時間,從那以后他很少用不正確的姿勢踢球。他那次得分可能只是碰巧做對了,但從此以后他有意識的運用這些技術使之接近完美。
現在回到新手測試人員的課程上來。我們每一個人都會有得意的時刻。我們找到重要的漏洞或發現優先級很高的缺陷,并為此雀躍不已。不過先花點時間考慮一下整體狀況。我們使用什么技術找到了那個缺陷?我們是否可以創建一種方法來找到更多這類缺陷?我們是否可以記住…些實際的測試經驗并不斷地加以應用來幫助提高我們的工作效率?軟件的哪些癥狀可以提示我們它具有缺陷?我們將來能否從那些癥狀中得到更多的警示?換句話說,這不僅僅是一個缺陷或是一次成功,這個缺陷教會了我們什么,是否使得我們將來成為更好的測試人員正如我兒子的進球一樣,盡管第一個缺陷是偶然間發現的,但它不代表其余的成功都是偶然。理解我們成功的原因很重要,只有這樣做,成功才能被復制。對于測試人員來說,這種保證成功的原因就是一系列的測試技術、建議和工具,它們可以提高我們在未來項目中的工作效率。
原文轉自:http://www.cnblogs.com/skytraveler/p/3546703.html