1. 程式人生 > >架構師Jack專訪:全面認識軟件測試架構師

架構師Jack專訪:全面認識軟件測試架構師

共享 團隊 得到 困難 試用 文章 交流 strong 一點

  測試架構師的職責

  測試的職業通道基本是管理線和技術線兩條路

  管理線主要的職責:更多是項目管理和資源管理。

  技術線主要的職責:更多是技術管理和業務知識。

  軟件測試架構師更多就是技術線的帶頭人。管理線的人更多的工作語言是:績效,考評,時間點,質量等。

  技術線的更多工作語言是:技術規劃,技術可行性,技術價值,技術共享性,解決什麽問題等。

  軟件測試架構師更多是一種角色,而不是一種title,是測試技術上和測試經驗上有影響力的人。什麽是有測試影響力的人呢?就是你沒有任何官位,你不是任何人的行政上級,但是大家在測試技術上和技術方向上願意跟隨你,願意采納你的建議。

  其實在很多中小公司中測試組長和測試主管也兼職軟件測試架構師的角色和職責。在大公司中,測試人員數百人時,管理工作所需要的精力會非常大,因此技術線和管理線就會分的比較開了。

  更多軟件測試架構師做什麽,可以看我的博客。在我們公司軟件測試架構師的職責定義細則也不是非常統一的,也不是很在意是否有這個title,但有一點是一樣的,都是測試技術線,對產品的項目管理和做人的工作就相應減少很多。

 ◇ 測試架構師的價值

  其實這些類型的工作早已有人在做的了,以前叫高級測試工程師,叫系統測試工程師,現在叫測試架構師,其實變的只是title,工作內容還是沒有變。

  關於測試架構師的重要性和價值,從公司角度出發,測試架構師是在幫助公司從提高運營效率的角度來提升公司的競爭力。通過引入,實踐,推廣新測試 技術,可從單點上提高某些技術效率和提高測試質量,也可從全局提高某些技術效率和提高測試質量,同時幫助員工培養。測試架構師這個角色也是一個團隊貢獻 者,是一個領導者,而不是孤膽英雄和獨立貢獻者。從影響力的角度來看,做好測試架構師比做好測試經理還要難,因為你是在沒有考評權的情況下要去改變測試人 員,去推廣你的專家價值。據我觀察我們公司中沒有很好溝通能力的人很難在測試技術路線上有很大的影響力。

  可以說測試架構師是一個公司所有測試技術經驗的窪地,他了解內部大部分的技術最佳實踐,也在積極了解公司外的最佳實踐,通過個人的實踐評估出適 合自己公司現狀,能解決公司現在問題的測試技術,有利於公司做好測試技術知識資產的管理,減少公司內測試知識資產的重復浪費。對於測試架構師沒有支撐的項 目組在測試質量和測試效率上的提升相比其它組要慢一些,項目組內對更佳的測試經驗和測試技術了解較少,員工成長較其它組也要慢些,視野要窄些。

  國內可能有些誤區,如把測試架構師定位為測試工具開發工程師或自動化測試開發工程師,其實這些工作不需要測試出身也能做好。測試技術領域除了工 具和自動化,其實還有很多的領域:如何提高測試設計的質量,如何提高有效場景的測試覆蓋率,如何把握好測試成本和測試目標的平衡,如何幫助開發提高產品的 可測試性,如何做好產品的可測試性設計,如何做好產品的專項測試(可靠性、安全性、性能、壓力等),如何做好測試執行的保障,如何做好黑盒以外的測試(需 求和設計的測試),如何做好編碼前的測試,編碼階段的測試等等。

  測試人員的核心競爭力不是編寫自動化,也不是做測試工具,而是測試質量,測試設計的質量。

  測試架構師和產品架構師最大的競爭力區別就體現在如何提高測試質量的經驗和能力上,這才是測試人員不可被替代的獨特核心競爭力。

  工具開發和自動化測試開發的積累無法打造不被開發人員替代的測試核心競爭力。如果一個測試架構師50%的時間都去寫代碼做測試工具開發了,那麽 就是在浪費測試架構師好不容易積累起來的測試經驗,其實也是在浪費公司的測試知識資產。測試架構師應該做測試領域中無法被他人替代的工作,測試工具和自動 化測試框架的實現是可以被開發工程師或其它有一定開發能力的測試人員替代做的。測試架構師可以基於如何提高測試覆蓋率,如何提高測試效率和測試質量的角度 提出測試工具和自動化測試框架的開發需求,甚至一些實現的指導就可以了。在我們公司有幾十名測試開發人員幫助我們實現測試工具,讓我們聚焦測試技術,而非 聚焦開發技術。

◇ 理想化的團隊角色分工

  測試架構師和測試團隊中的其他角色,比如測試工程師、測試經理等等,他們的角色定位有什麽不同?在一個理想化的團隊中,他們的分工是一個什麽樣的狀態?關於這些問題在我的博客中有兩篇文章是專門提到的,分別是《測試架構師與產品測試組、產品開發組的配合》和《測試架構師與測試經理的關系》。大家可以直接去閱讀,有什麽問題也歡迎留言交流。

 ◇ 我的測試生涯

  我的測試生涯分為3個階段:

  第一個階段:積累期。在一家有幾十名測試人員的公司從事幾年測試一線工作,獨立從事了絕大部分的測試活動。例如:獨立負責新特性的測試用例設計,壓力測試,性能測試,安全性測試,自動化測試框架從無到有的實現,系統測試,基於用戶場景的測試。

  最大的收獲是:打好了測試經驗基礎和研發項目經驗基礎,對從事測試架構師的工作支撐非常大。

  第二個階段:成長期。跟隨了幾位矽谷的測試專家工作了幾年,了解和學習了很多矽谷的測試技術和意識,大大拓展了測試的視野,拔高了我在測試業界 的意識境界高度。對自動化測試、安全性測試、系統測試、測試管理、測試質量保障等領域又有了更深入認識和經驗積累。測試基礎和地基又打得更深了。

  第三個階段:爆發期。經過前幾年的一線經驗積累,業界的視野拓展。到現在的公司平臺,得到了充分的發揮。對各種測試理論、新技術的理解和實踐感 覺很輕松,並能提出自己的測試理論和測試架構。從測試體系系統化和理論深度獲得了質的提升。現在的影響力涉及公司數百名測試人員,領導公司多個測試專項領 域。

 ◇ 測試架構師具備的素質

  軟素質:溝通能力,領導力和影響力。沒有這些軟能力,就無法把你的知識和經驗為公司做出大的貢獻,發揮業務專家的作用,只是個人孤膽英雄而已。系統化 的思維能力,這是普通級與專業級的本質區別。創新能力,沒有創新能力就無法解決他人解決不了的問題和困難。

  硬素質:測試架構師是一個系統專家,不是專項測試工程師也不是開發人員。因此業務基礎必須很紮實和深厚,要 具有全面的測試領域的一線測試經驗。至少要有5年以上的一線測試經驗和全面測試類型的經驗。沒有寬度就成不了系統專家,沒有幾年的一線測試經驗就沒有深 度,同樣成不了系統專家,沒有某個測試類型的實戰經驗就無法融會貫通的知道自己團隊在該領域需要解決的問題,也不會識別適合自己團隊的新技術或意識。

 ◇ 新手入門&職業規劃

  首先:厚積薄發!打好一線測試執行的基礎,根據各人的悟性不同,也許有人需要10年,也許有人需要7、8年。

  其次:拓展眼界!找到好的測試業務專家向他學習。如果沒有就盡可能到大公司去工作,哪怕做外包也幹,年輕人盡早拓展視野,對自己的眼界和成長會 有很大的幫助。如想走管理路線,更要到已證明成功的優秀的大公司去。俗話說大公司發展靠管理,有利於年輕人盡早建立正確的體系化的管理知識體系,掌握正確 的領導管理習慣和意識。有幸做到主管後自己要努力做一個真正的受大家跟隨的領導者,否則做一個蹩腳的管理者最終害的是自己,有可能到中年後既無技術所長也 無真正的領導能力所長。

  最後:職業發展需要一個好的環境平臺,也需要一些運氣。當運氣不佳時,內心要堅持自己想要的目標,要相信人不可能一直走大運,也不可能一直走壞 運氣的,運氣不佳時要充分挖掘現有環境下可利於自己成長的內容。30歲以前都還只是一個學習和成長的階段,你的首要任務是成長和學習。

架構師Jack專訪:全面認識軟件測試架構師