前言:這個系列分享的内容大部分都是出自于《google是如何測試的》的書,不是我yy的,我隻是大自然的搬用工,希望對大家有那麼一點點的用處,當然後面也會有個人的一些想法。
上一次分享了google測試分享-gta,大概說了下google是如何使用gta來管理整個測試階段,特别是測試計劃的安排,那這次會聊一聊google測試經理是如何進行團隊管理的。
為了讓這些blog分享更有邏輯性,我打算分幾個專題來分享google測試相關的測試理念。
<a href="http://blog.sina.com.cn/s/blog_6cf812be0102vbnb.html" target="_blank">google測試分享-set和te</a>
<a href="http://blog.sina.com.cn/s/blog_6cf812be0102vctg.html" target="_blank">google測試分享-分層測試</a>
<a href="http://blog.sina.com.cn/s/blog_6cf812be0102viuh.html" target="_blank">google測試分享-gta</a>
google測試分享-測試經理
google測試分享-問題和挑戰
google測試分享-未來測試
首先大家可以思考下,google的測試經理角色必須具備什麼樣的能力。據不完全統計,google的測試經理,超過一半之前都做過te的角色(大家可以想想為啥);對于與被測産品相關的任何使用問題,測試經理都應該是專家。是以google對測試經理的期望:相關項目中最強的産品專家。這個時候,大家是否感覺奇怪了,測試人員對業務的了解大家都是認可的,為啥測試經理也是要對業務非常了解呢,測試經理不是安排下測試任務就ok了嗎。
google認為優秀的測試經理能做到如下幾點:
(1)了解産品
(2)知人善用
(3)解決資源緊缺問題
(4)問題不能簡單的通過增加人手來解決,就需要使用工具使其流水線化
(5)有責任優化整個測試過程,任務安排更合理
(6)不能過于依賴于某些成員,必須沉澱可用的工具或總結成一套方法,幫助其他人成為明星
那麼在google測試經理是如何來安排測試任務呢,首先開發團隊組織一個會議邀請一位可以信賴的測試經理,向他介紹自己的項目,希望他能夠為這個項目組建一支測試團隊。而那些不重視品質的開發團隊,隻能自己完成測試工作,因為他找不到測試人員幫助他們提高品質;同樣的那些不願意編寫小型測試用例、不進行良好單元測試覆寫的開發團隊将會不被理睬,自生自滅。也就是說,如果開發團隊的品質意識未改變,那這個開發團隊開發的産品肯定不會有專門的測試人員參與。
在google,每個工程師的目标都應該是建立影響力。測試經理沒有要求測試團隊來保證産品的品質,沒有要求保證産品的按時釋出。測試經理應該保證每項工作都具有一定的影響力。也就是說測試團隊的團隊目标是:一個測試團隊中每位工程師都有能力完成極具影響力的工作,測試過程中的每個單元都有明确的目的和明顯的效果。開發團隊也非常了解測試工作并一起參與進來,直到最終完成目标,測試經理需要多思考為什麼,為什麼做這些事情:第一 因為它能提高産品的品質;第二,因為它能提高工程師開發産品的效率。
在某些特殊緊急情況下,測試經理在設計階段會積極地參與,持續地跟進項目并且自己編寫測試。在正常項目情況下,測試經理需要制定好項目測試政策:
(1)使用20%的測試人員進行探索式測試。任何關注使用者體驗的産品都需要探索式測試
(2)30%的測試工程師關注于産品的整體性測試,他們和set一起保證測試的效果
(3)另外50%的工作是set開發相關的自動化測試和工具,以保持代碼庫的健壯和提高開發人員的工作效率
相比較其他公司而言,google更強調速度,確定他們的産品足夠快,測試人員進行性能分析以便于可以證明給所有人看。google的dna就是創新精神。測試團隊也應該被看做創新者。發現重要的問題并能創造性地提出解決方案。在google大部分測試tc都是自動化測試,怎麼進行産品的自動化測試呢,這個比喻就像開車一樣,你必須找到測試的離合點。過早編寫測試,有可能由于架構的變化導緻全部工作廢棄;若等待太久,則又可能錯失測試良機而導緻沒有充分測試。測試驅動開發是個不錯的選擇。
google的測試人員非常強調産品的壓力測試,發現性能退化的問題,幫助開發一期定位和解決問題。另外也更加專注于預防bug而不是檢測bug,包括ci,code change push ci;由于強調對每個層次的測試範圍了如指掌,特别是自動化測試能覆寫的測試範圍,這樣就給探索式測試的效率也帶來了挑戰。
測試團隊擷取開發工程師的支援是很重要的,整個項目團隊(開發+測試)共同對元件級别的産品品質負責,而測試可以集中精力來改進流程、架構、工具集和內建測試。
測試管理者就像一個海盜船的船長一樣來管理的,他給船員的真正的動力在于劫掠的生活方式和看到下一次收成的興奮感。測試管理者要靠技術洞察力、令人興奮的技術冒險、有趣的停靠港口來帶領團隊,否則船員很容易變動,去找能給他帶來未來的新船長。
相比較于國内的測試經理來說,對業務和産品細節的了解就會差很多,很少tl去參加自己負責的産品的prd評審或技術方案評審,是以給團隊成員在測試政策和創新上提供的價值就會少很多,如何最優化項目的測試範圍和計劃,如何利用更多有效率的方法和工具上,tl的價值就會差異非常的大。那本書裡面就舉例了chrome測試經理是如何對于chrome的産品需求細節和技術實作細節的了解到位的,總體上還是讓人很詫異的。
最後我談談個人對測試經理或tl的職責的了解,我覺得tl要給所有測試人員找到目标感和成就感是首要的任務,包括找到那種創新和變革的氛圍。想辦法減少或解決重複單調的測試執行工作,将測試人員的工作重點放在測試設計上,尤其是異常測試設計上,其中包括系統設計方案的了解,甚至是code review等,同樣的,這些工作任務上,測試經理應該有很豐富的經驗能指導團隊成員高效的完成。
另外還希望測試經理還能給團隊成員帶來不一樣的思考角度,包括測試技術和項目測試管理上,這就要求測試經理不僅僅非常全面的了解國内一些成熟的測試技術和正在實踐的新的實踐方式,還需要了解國外的一些測試理念,抽選出合适的,小而美的創新方式在項目中進行小範圍的實踐,這些都需要有測試技術sense和想象力才能完美的實作。
包括google在内,測試團隊還是會有很多各種各樣的問題和調整,測試環境問題、自動化測試問題、覆寫率問題、效率提升問題、單元測試問題、測試職業前途發展問題等等,測試團隊每年的改變和目标都是在解決這些問題,一步步的解決,從未放棄,這也是網際網路測試團隊不同于傳統測試團隊最大的差別,下期準備分享google測試遇到的問題和挑戰,google測試分享-問題和挑戰。
轉載自:http://blog.sina.com.cn/s/blog_6cf812be0102vode.html