測試團隊應有的類型
在一個理想世界里,你可以根據你的項目需求從一個“性格類型”庫里選擇組建一支測試團隊,幾乎和你為一出喜劇或一部電影選擇演員陣容是一樣的。你想要什么類型來保證團隊的成功呢?讓我們來看一些可能性。
早期采用者(Early Adopter)。軟件工程的一個方面是“永恒的變化”同時帶來的喜悅和痛苦。就在你覺得你已經掌握了一種技術或工具的最新情況時,一個新的版本或產品發布了,你又落后了。而且你別無選擇的要更新你的知識:你必須努力跟上最新的進展。如果你停滯不前,你很快就會掉隊。因此,在你的團隊里你需要一個喜歡探索最新軟件并為你的團隊的軟件測試環境推薦新插件的人。
持續采用者(Constant Adapter)。這個人根據團隊的具體需要改編新的和已有的軟件工具,是早期采用者的補充。比如,假設早期采用者找到了一種幫助數據庫管理員從突發失效中恢復的工具。持續采用者會學習如何使用該工具,然后把它用于另一種目的,使得測試團隊成員可以重建數據庫并在他們進行了一系列測試后恢復一個“干凈”的測試環境。
開心的集成者(Happy Integrator)。比管理計劃耗費時間長,發現嚴重的、不易調試的問題,而且通常被認為比其他類型的測試次要的測試是什么類型呢?答案是:集成測試,F在,似乎已經沒有團隊真正為他們的產品寫全部代碼了。取而代之,他們使用其他公司提供的代碼或公開源代碼來構建他們的產品的主要部分。對多來源的代碼進行集成測試與對單來源的代碼進行集成測試是很不同的。你必須在集成的子系統之間驗證產品的操作,并考慮到子系統的限制(以及潛在的缺口 3 )。這種測試令人瘋狂,因為它涉及理解和破譯子系統之間的數據和進程流。盡管如此,不幸的是,有些人實際上非常喜歡這種“偵探工作”。
有經驗的挖掘者(Experienced Miner)。有一個關于老煤礦工不需要地質數據來發現煤礦點的故事。他做礦工的時間太久了,以至于他可以憑直覺找到煤礦并用十字鎬的一次簡單回轉把它敲松。他可以感覺到正確的敲擊位置,這樣巖石的外殼就會裂開顯出煤礦,正如雕塑家可以精確知道在石頭的什么位置而用鑿子敲擊一樣。有些人在測試軟件時是這樣的:不管情況如何,他們都可以找到正確的位置來運行程序以發現關鍵的缺陷。有時這種技能是基于對正在測試的軟件的經驗的。比如說,對Java servlet有直接設計和操作經驗的人在發現基于servlet的程序 4 的錯誤上很拿手。在其他情況下,根據對相似類型的項目的經驗,一個軟件測試工程師可能會準確知道在哪里找“致命缺陷”。他們可能曾在有相似設計或管理問題的項目上工作過。比如說,有些軟件設計就是必須在開發和測試中 5 根據市場和技術變化不斷改變和進化。
不知疲倦的革新者(The Indefatigable Innovator)。這是總能夠通過新的方法發現問題的人。我可以不客氣地說,我已經在很多項目團隊中擔任過這個角色。很久以前,一個很短的通知叫我換個任務,從一個有趣的項目換到一個不怎么有趣的項目。在試圖最好地利用一個糟糕情況的過程中,我決定設計構建一個新的測試服務器軟件配置定義和跟蹤工具,它是基于一個XML數據庫的。當我與這個不愉快的項目的不愉快團隊的另一個成員討論這個想法時,她很悲傷地看了我一眼,警告說,“不要嘗試任何有創造性的東西!痹陧椖慨敃r(雜亂無章)的狀態下她感到無比的壓抑,以至于她看不到對舊問題嘗試新方法的好處。而我作為項目中的新成員,我下決心要學習一種有用的新技能,因此我理由不去嘗試一些不同的方法。盡管我永遠無法實現我的最終目標——完成一個自動建立復雜測試服務器配置的工具——我還可以學到很多關于XML DTD 6 設計的東西并定義(基本人工)一個量化復雜服務器配置的方法。
遠見者(Visionary) 盡管不知疲倦的創新者總是能發現實現戰術問題的方式,但發現更高級的,策略性問題的解決方案的卻是遠見者。團隊需要一個能看到“藍圖”的人——對如何進行軟件測試具有廣泛認識,而且對你的具體程序有深入認識的人。團隊很容易陷入把已有解決方案用于新問題的陷阱。有時候這是最實用的方法,但是在另一些情況下,你必須重新思考 7 并設想新的解決方案。技術變化在以不斷增加的速度進行著;“在過去”可能指昨天,停滯不前等于落后。 8 每個團隊都需要一個有遠見的人來推動它向前進步。
你發現了這些人的性格的共同之處了嗎?他們都很饑餓。我不是指他們的飲食習慣(盡管,作為一條慣例,測試人員確實會把帶到他們辦公室的免費食品狼吞虎咽地吃下去),而是指他們進行軟件測試的方法。他們好奇、有預見性、適應性強,并且不懼怕嘗試新事物或是問“為什么?”他們在技術和學術上是不斷進步的。他們永遠不會因為停滯不前而落后。
文章來源于領測軟件測試網 http://www.kjueaiud.com/