跟谷歌測(cè)試工程師的對(duì)話(huà)收獲分享
導(dǎo)讀:只有一條路不能選擇——那就是放棄的路;只有一條路不能拒絕——那就是成長(zhǎng)的路,
跟谷歌測(cè)試工程師的對(duì)話(huà)收獲分享
。以下是由應(yīng)屆畢業(yè)生網(wǎng)小編J.L為您整理推薦的畢業(yè)生面試筆試經(jīng)驗(yàn)題目,歡迎參考閱讀。你是測(cè)試工程師,還是編寫(xiě)測(cè)試代碼的軟件工程師?這兩者之間有什么區(qū)別?
目前我是測(cè)試工程師,但這兩種角色非常的相似。作為測(cè)試工程師,你更多的是專(zhuān)注于產(chǎn)品的總體質(zhì)量和軟件發(fā)布的速度,而編寫(xiě)測(cè)試代碼的軟件工程師更多的是關(guān)注測(cè)試框架,自動(dòng)化測(cè)試和為測(cè)試重構(gòu)代碼。
我想這兩者之間的不同更多的是關(guān)注點(diǎn),而不是能力問(wèn)題,因?yàn)樵诠雀,這兩種角色都需要能寫(xiě)出產(chǎn)品級(jí)質(zhì)量的代碼。例如,我所做的測(cè)試工程師的任務(wù)是引入自動(dòng)化的發(fā)布過(guò)程,為團(tuán)隊(duì)劃分模塊來(lái)提高測(cè)試覆蓋率,減少校驗(yàn)數(shù)據(jù)正確性時(shí)需要的手工操作步驟。
你的典型的一天的工作是個(gè)什么樣的情形?
當(dāng)來(lái)到公司,我首先去看哪些代碼審查是需要回復(fù)的,看看哪些從技術(shù)客戶(hù)經(jīng)理發(fā)過(guò)來(lái)的bug是具有高優(yōu)先級(jí)的,然后開(kāi)始寫(xiě)代碼。
在當(dāng)前的職務(wù)上,我的主要精力是放在提高大規(guī)模集成測(cè)試和測(cè)試框架上的測(cè)試有效性和覆蓋率。我也會(huì)在我們的產(chǎn)品中增加一些功能特征,來(lái)改進(jìn)測(cè)試有效性。我的時(shí)間的50%到 75%會(huì)花在寫(xiě)代碼上或代碼審查上。
你只寫(xiě)測(cè)試代碼嗎?
不是的.,我寫(xiě)的很多代碼會(huì)留在發(fā)布的產(chǎn)品中。在谷歌做SET或TE的一個(gè)最大的好處是:你寫(xiě)產(chǎn)品代碼就像寫(xiě)測(cè)試代碼一樣簡(jiǎn)單。我兩者都寫(xiě)。
我寫(xiě)的測(cè)試代碼主要是用來(lái)改進(jìn)測(cè)試框架,讓開(kāi)發(fā)人員能寫(xiě)出集成性好的測(cè)試程序。我寫(xiě)的產(chǎn)品代碼主要是來(lái)改進(jìn)對(duì)外部輸入數(shù)據(jù)的驗(yàn)證。我還會(huì)寫(xiě)一些來(lái)提高可測(cè)試性的功能代碼。這些代碼能給產(chǎn)品帶來(lái)質(zhì)量更高的功能特征,避免了讓產(chǎn)品依賴(lài)于測(cè)試程序來(lái)發(fā)現(xiàn)其中的問(wèn)題。
你用什么語(yǔ)言開(kāi)發(fā)?
測(cè)試代碼和產(chǎn)品代碼大部分都是使用Java。偶爾也會(huì)使用Python或C++。
手工測(cè)試會(huì)占用你多少時(shí)間?
目前,在這個(gè)崗位上,我手工測(cè)試的時(shí)間少于5%。經(jīng)過(guò)某些探索式的測(cè)試能幫助提高對(duì)產(chǎn)品的認(rèn)識(shí)、發(fā)現(xiàn)某些風(fēng)險(xiǎn)的存在,但這些不會(huì)反復(fù)的出現(xiàn),也不多。
需要手工的步驟很少,我的任務(wù)就行幫助減少這種操作,所以團(tuán)隊(duì)不會(huì)讓我去做那些數(shù)據(jù)遷移中反復(fù)的手工測(cè)試工作。
你不是給自己的代碼寫(xiě)測(cè)試代碼吧?
在谷歌,測(cè)試的任務(wù)是在所有工程師間交叉分?jǐn)偟,并不是只由測(cè)試工程師來(lái)做,
資料共享平臺(tái)
《跟谷歌測(cè)試工程師的對(duì)話(huà)收獲分享》(http://salifelink.com)。每個(gè)人都要為他們的組件寫(xiě)出單元測(cè)試代碼,就像集成測(cè)試工作一樣。這就是說(shuō),我寫(xiě)的測(cè)試用例針對(duì)的組件并不是我開(kāi)發(fā)的,但這些組件需要有說(shuō)明如何為它寫(xiě)測(cè)試代碼。這些組件通常牽涉到非常復(fù)雜的代碼或需要用新的模擬框架,例如Mockito。
開(kāi)發(fā)谷歌的廣告產(chǎn)品,哪些是你喜歡的?
我喜歡我們需要解決的問(wèn)題中的海量或高性能所帶來(lái)的挑戰(zhàn)——從處理海量數(shù)據(jù)到在毫秒級(jí)間實(shí)時(shí)對(duì)大量的廣告請(qǐng)求進(jìn)行響應(yīng)。我還喜歡我們產(chǎn)品的影響力,因?yàn)檫@些產(chǎn)品會(huì)牽涉到很多的用戶(hù)。這是工作在這樣的產(chǎn)品上獲得的回報(bào)。
依你的經(jīng)驗(yàn),谷歌的測(cè)試工作和你干的其它公司里有什么不同?
我感覺(jué)在谷歌,這個(gè)角色非常的靈活。在我的團(tuán)隊(duì)里很少區(qū)分這是SET的那是TE的,每個(gè)人可以靈活的選擇他們認(rèn)為最重要的工作去做。例如,我寫(xiě)了很多的產(chǎn)品代碼,修改了很多產(chǎn)品中的bug,提高代碼的可測(cè)試性,增加在遷移數(shù)據(jù)中對(duì)錯(cuò)誤數(shù)據(jù)的可觀察性。同時(shí),谷歌的很多開(kāi)發(fā)人員卻在花大量的時(shí)間測(cè)試代碼,所以說(shuō),測(cè)試不是我的唯一任務(wù)。
在谷歌柯克蘭工作區(qū)工作和在谷歌總部工作有什么不同?
我真正喜歡谷歌的地方是它的各個(gè)辦公區(qū)各有自己本地風(fēng)格和個(gè)性。谷歌提倡這樣。例如,位于柯克蘭的辦公區(qū)有攀巖和劃船設(shè)施,我們辦公大樓里的所有會(huì)議室都是以本地品牌命名的。位于西雅圖的辦公室有皮劃艇,而紐約的辦公區(qū)里在自主餐廳里有食品車(chē)。
谷歌的這種測(cè)試文化有前途嗎?
我覺(jué)得前途一片光明。我們有很大的靈活性,能對(duì)產(chǎn)品的質(zhì)量和可測(cè)試性產(chǎn)生重大積極的影響,能提高產(chǎn)品發(fā)布的速度。我們需要快速的產(chǎn)品發(fā)布和高質(zhì)量的產(chǎn)品發(fā)布。
問(wèn)題是我們面對(duì)的問(wèn)題很復(fù)雜,而且要求很苛刻。我們需要用技術(shù)來(lái)確保團(tuán)隊(duì)有有效的測(cè)試方式。這是所有在谷歌的測(cè)試人員和工作中這個(gè)領(lǐng)域的開(kāi)發(fā)人員的努力目標(biāo)。
Alan Faulkner是谷歌的測(cè)試工程師,他的工作對(duì)象是谷歌的DoubleClick廣告報(bào)價(jià)管理系統(tǒng)(Bid Manager),這個(gè)系統(tǒng)提供讓廣告代理商和廣告客戶(hù)在多個(gè)廣告上進(jìn)行報(bào)價(jià)競(jìng)標(biāo)的功能。Bid Manager是谷歌2010年收購(gòu)的Invite Media系統(tǒng)的下一代產(chǎn)品。
Alan Faulkner的主要工作負(fù)責(zé)Bid Manager系統(tǒng)用來(lái)移植數(shù)據(jù)的組件,這些組件用來(lái)把Invite Media中的廣告客戶(hù)信息轉(zhuǎn)換到Bid Manager系統(tǒng)中。Alan Faulkner 2011年進(jìn)入谷歌,工作地點(diǎn)是位于華盛頓的柯克蘭辦公室。
【跟谷歌測(cè)試工程師的對(duì)話(huà)收獲分享】相關(guān)文章:
4.谷歌工程師面試題