google測試相關(guān)的職位有三類:軟件測試開發(fā)工程師、測試工程師以及測試工程經(jīng)理忘朝。
軟件測試開發(fā)工程師也是一個開發(fā)角色,只是工作重心在可測試性和通用測試框架上。他們參與設(shè)計評審集索,非常近距離地觀察代碼質(zhì)量與風(fēng)險。為了增強可測試性汇跨,他們甚至?xí)Υa進(jìn)行重構(gòu)务荆,并編寫單元測試框架和自動化測試框架。相比較軟件開發(fā)工程師是在增強功能性代碼或是提高代碼性能穷遂,該角色更加關(guān)注于質(zhì)量提升和測試覆蓋率的增加函匕,其寫代碼的目的是可以讓軟件開發(fā)人員測試自己的功能。
軟件測試工程師把用戶放在第一位來思考蚪黑,組織整體質(zhì)量實踐盅惜,分析解釋測試運行結(jié)果,驅(qū)動測試執(zhí)行忌穿,構(gòu)建端到端的自動化測試酷窥。
測試工程經(jīng)理負(fù)責(zé)所有的支持團(tuán)隊(開發(fā)、產(chǎn)品管理伴网、產(chǎn)品發(fā)布蓬推、文檔等)之間的聯(lián)絡(luò)。他需要擁有技術(shù)能力澡腾、領(lǐng)導(dǎo)能力和協(xié)調(diào)能力沸伏,接受測試工程師和測試開發(fā)工程師的匯報并直接向測試總監(jiān)匯報。
google為什么會有軟件測試開發(fā)工程師這么一個職位动分?問題暴露在越前端消耗的成本越低毅糟。大家都希望,問題在開發(fā)階段就全部被發(fā)現(xiàn)澜公。但這是一個理想狀態(tài)姆另,因此只能寄托于開發(fā)人員做足充分的自測試,或者招收大量的測試工程師坟乾。但開發(fā)人員過多關(guān)注于測試迹辐,會妨礙產(chǎn)品功能的如期交付,而龐大的測試隊伍也不是google期望的甚侣。有開發(fā)能力和測試經(jīng)驗的測試開發(fā)工程師既能幫助開發(fā)做好自測試明吩,又能縮小測試隊伍,恰好就是google這種以精英技術(shù)員工為主的公司所需要的殷费。
測試充滿了灰度印荔,包括職責(zé)灰度和測試量的灰度低葫。敏捷交付的產(chǎn)品環(huán)境都提倡剛剛好的測試,百分之百的測試也是不可及的仍律。職責(zé)灰度體現(xiàn)在有的測試工作開發(fā)工程師可執(zhí)行嘿悬,測試工程師也可執(zhí)行,關(guān)鍵看產(chǎn)品是做何要求水泉。在開發(fā)工程師隊伍能力足夠強大的情況下鹊漠,我認(rèn)為開發(fā)人員如果能承擔(dān)更多的質(zhì)量工作更有利于產(chǎn)品交付。google的測試認(rèn)證計劃就是讓開發(fā)工程師參與測試茶行,形成開發(fā)人員做測試的文化。
google軟件測試之道還提及了一些測試設(shè)計的方法以及測試相關(guān)職責(zé)的工程師的訪談登钥,講了道畔师,也講了術(shù),還有一線精英的悟牧牢,可謂精品看锉。