如何修煉為測試架構師[4] 軟件測試
在一次到產品測試組進行測試活動質量抽檢時。我們問測試經理,你們產品測試目前最大的需求是什么?他說是如何進行壓力測試和性能測試,希望我們測試架構師團隊能在此領域多給予支持。我心里知道:他所負責的產品特性核心不是性能和壓力測試,但我沒有反駁他。而是繼續問他下一個問題:“你覺得會讓你產品未來應用時商業失敗的最大擔心是什么?”他想了想說:“不能對客戶的生產系統產生破壞,讓客戶的業務中斷!薄耙罁覀兊慕涷,與客戶生產系統交互的模塊雖然是個小模塊,但是在其他產品上經常出現內存泄露的故障從而破壞了生產系統。那你針對該小模塊做過哪些系統地測試?有無專門進行內存泄露的測試,因為內存泄露對客戶生產系統的破壞最大!蔽覇柕。這時此測試經理才恍然大悟,這個對生產系統質量影響最大的小模塊居然沒有系統地進行過深入全面的測試。我這時告訴他 “你之所以開始說性能和壓力測試是你的重點需求,是因為你們組里沒有在性能和壓力測試方面的積累,有工作開展的難處,這是困擾你的困惑。但是你的產品形態的質量不是性能或所謂壓力測試來保障的,而是需要不對生產系統產生破壞。因此,你唯一能破壞生產系統的那個小模塊應該是你整個產品中質量最高的模塊,也應該是測試最全面最深入的模塊,你的技術力量應該主要投到這個地方”。后來,針對該小模塊我們進行專項內存泄露的測試,結果發現了好幾個內存泄露的大bug,這些bug每一個都是會導致客戶生產系統中斷的殺手。
測試架構師不是團隊中專門解決測試難點的專家,而是識別測試重點,并支撐測試重點工作的專家!皡^分測試重點和難點的能力”不是測試架構師獨有,系統測試工程師和測試工程師一樣可以具有。與第一篇“準確的商業理解力”一樣,第二篇要做的是:做正確的事。
在開始描述我理想中的測試架構師必備素質第三篇前,我想先轉載一篇來自互聯網萬欣的文章《好的架構師都是善良的獨裁者——萬欣》與大家分享,作為測試架構師必備素質第三篇的前言:
對于任何一個軟件開發人員來說,架構師都是一個令人向往的角色。就連世界首富比爾蓋茨在2000年卸任公司CEO的同時,也擔任了微軟公司的榮譽角色“首席軟件架構師”,可見“架構師”這一稱謂的吸引力。架構師是公司的“金領”,有著非常高的收入,很少需要考慮生存的問題,從而有更多的精力思考關鍵技術問題,形成“強者愈強”的良性循環。部分優秀的開發人員在工作了一定時間后,就要開始考慮自己的未來到底向哪個方向發展。如果開發人員的溝通能力強過技術能力,在補充一定的項目管理知識后,可以向技術管理的方向轉型。如果其對技術一直很感興趣,而溝通能力也不弱,則可以試著進一步加強技術修養,以期向架構師的方向發展,最終“修成正果”。
那么,到底什么是架構師呢?所謂的架構師,應該是一個技術企業的最高技術決策者。他主要負責公司軟件產品或軟件項目的技術路線與技術框架的制訂。好的架構師都是善良的獨裁者,具有很強的技術、良好的寫作能力、良好的口頭表達能力,能夠在各個層次進行溝通。從開發人員到架構師的成長應該是階梯式的,一般來講開發人員在剛剛開始工作時只能開發簡單的獨立軟件模塊,慢慢的隨著經驗的增長,他開始接觸一些相互之間有信息傳遞的模塊,而后來,他會發現自己接到的開發任務已經不是一個獨立的單體,這些任務由一些專門的軟件部分組成,可能包含數據庫,工作流引擎,消息服務等等各種功能模塊,可能分布在不同的服務器上,所有的部分協同起來,完成軟件功能。而這時候,體系結構的好壞將直接決定了系統的性能和可擴展性,而就在這時候,這名優秀的開發人員也開始思考架構師應該思考的問題了,或者說,他向成長為架構師的道路邁出了一大步。
文章來源于領測軟件測試網 http://www.kjueaiud.com/