Google軟件測試介紹3測試工程師

測試工程師

軟件測試開發(fā)工程師(SET)負(fù)責(zé)可測試性和測試自動(dòng)化體系的長期有效性燕锥。測試工程師(Test Engineer酌住,后文簡寫TE)的職責(zé)與之有所不同羡洛,TE的重點(diǎn)在于評(píng)估對(duì)用戶的影響以及軟件產(chǎn)品整體目標(biāo)上的風(fēng)險(xiǎn)峻呛。與Google的其他大多數(shù)技術(shù)崗位一樣筒捺,TE的工作涉及到一些編程,但編程只是一小部分势就,實(shí)際上,在所有工程師中他們的職責(zé)范圍堪稱最廣脉漏。TE對(duì)產(chǎn)品的貢獻(xiàn)很大苞冯,但他們承擔(dān)的很多任務(wù)不需要編程(注:這只是通常的說法。許多TE所從事的工作與SET非常類似侧巨,需要編寫大量的代碼舅锄,而另外一些TE的職責(zé)更類似發(fā)布工程師,只需要編寫很少量的代碼)司忱。

Google的TE綜合了開發(fā)者仰慕的技術(shù)能力和以用戶為中心檢查軟件質(zhì)量而對(duì)開發(fā)者產(chǎn)生一定制約的能力皇忿。

TE的職位描述是最難定義的,因?yàn)槠渎氊?zé)范圍很廣而且不確定坦仍。人們期望TE在各種各樣的構(gòu)建物的完成鳍烁、集成、最終形成完整的產(chǎn)品過程中監(jiān)督所有產(chǎn)物的質(zhì)量繁扎。因此幔荒,大多數(shù)的TE都會(huì)從事一些基礎(chǔ)技術(shù)層的、需要另外一種視角和較強(qiáng)的專業(yè)技術(shù)能力的工作梳玫。這一切都與風(fēng)險(xiǎn)有關(guān):TE以對(duì)某種特定的產(chǎn)品最合適的方式發(fā)現(xiàn)軟件中風(fēng)險(xiǎn)最大的地方并嘗試減少或消除它爹梁。如果需要做SET的工作,TE就去做提澎;如果需要代碼審查姚垃,那就只管去做。如果缺少測試工具盼忌,那就花一些時(shí)間在上面积糯。

接下來掂墓,同一個(gè)人還會(huì)在項(xiàng)目的其他時(shí)段去領(lǐng)導(dǎo)探索式測試,或者管理內(nèi)部試用版(或beta版)的測試工作絮宁。在不同的項(xiàng)目階段梆暮,SET和TE的重點(diǎn)不同,早期的工作涉及到更多的面向SET的任務(wù)绍昂,而項(xiàng)目后期才是面向TE的任務(wù)啦粹。還有一些情況是TE的個(gè)人選擇,他們可以在不同的角色間切換窘游。但凡事沒有絕對(duì)唠椭,我們?cè)谙旅嫠龅拿枋觯皇谴砹死硐氲那闆r忍饰。

在研發(fā)的早期階段贪嫂,功能還在不斷變化,最終功能列表和范疇還沒有確定艾蓝,TE通常沒有太多的工作可做力崇。

當(dāng)TE進(jìn)入產(chǎn)品的時(shí)候,并不需要從零開始赢织。SWE和SET已經(jīng)在測試技術(shù)和質(zhì)量方面做了大量的工作亮靴,可以作為TE的起點(diǎn)。TE在進(jìn)入產(chǎn)品時(shí)于置,需要考慮以下一些問題茧吊。

  • 當(dāng)前軟件的薄弱點(diǎn)在哪里?
  • 有沒有安全八毯、隱私搓侄、性能、可靠性话速、可用性讶踪、兼容性、全球化和其他方面的問題泊交?
  • 主要用戶場景是否功能正常俊柔?對(duì)于全世界不同國家的用戶都是這樣么?
  • 這個(gè)產(chǎn)品能與其他產(chǎn)品(軟件和硬件)互操作嗎活合?
  • 當(dāng)發(fā)生問題的時(shí)候雏婶,是否容易診斷問題所在?

當(dāng)然這只是一個(gè)不完全列表白指。所有這些加起來留晚,構(gòu)成發(fā)布待評(píng)估軟件的風(fēng)險(xiǎn)概要。TE并不需要自己去解決所有這些問題,但必須保證這些問題被解決掉错维,他們可以請(qǐng)其他人幫忙評(píng)估還有多少工作需要去做奖地。TE的根本使命是保護(hù)用戶和業(yè)務(wù)的利益,使之不受到糟糕的設(shè)計(jì)赋焕、令人困惑的用戶體驗(yàn)参歹、功能bug、安全和隱私等問題的困擾隆判。在Google犬庇,TE是一個(gè)團(tuán)隊(duì)中全職地負(fù)責(zé)從整體角度發(fā)現(xiàn)產(chǎn)品或服務(wù)弱點(diǎn)的唯一角色。因此侨嘀,與SET相比臭挽,TE的工作并不是那么確定。TE會(huì)介入項(xiàng)目的各個(gè)階段:從產(chǎn)品的構(gòu)思階段到第8個(gè)版本咬腕,甚至是照看一個(gè)已經(jīng)下線的項(xiàng)目欢峰。一個(gè)TE同時(shí)參與幾個(gè)項(xiàng)目也很常見,尤其是那些具備安全涨共、隱私或全球化等專門技能的TE纽帖。

這個(gè)角色需要敏銳的洞察力和領(lǐng)導(dǎo)力,因此很多Google的高級(jí)測試經(jīng)理們都來自于TE举反。

TE的工作經(jīng)常需要去打破常規(guī)流程懊直。TE可以在任何時(shí)間進(jìn)入項(xiàng)目,必須迅速評(píng)估項(xiàng)目照筑、代碼吹截、設(shè)計(jì)和用戶的當(dāng)前狀態(tài)瘦陈,然后決定首要的關(guān)注點(diǎn)凝危。如果項(xiàng)目剛剛開始,測試計(jì)劃是第一優(yōu)先級(jí)晨逝。有時(shí)蛾默,TE在產(chǎn)品后期被拉進(jìn)來幫助評(píng)估項(xiàng)目是否可以發(fā)布,或者在beta版本發(fā)布之前確認(rèn)還有哪些主要的問題捉貌。當(dāng)TE進(jìn)入了一個(gè)新被收購的應(yīng)用或缺少相關(guān)應(yīng)用經(jīng)驗(yàn)的時(shí)候支鸡,他們經(jīng)常會(huì)先去做一些不怎么需要計(jì)劃的探索式測試。有時(shí)趁窃,項(xiàng)目已經(jīng)很久沒有發(fā)布了牧挣,只是需要去做一些修飾、安全補(bǔ)丁或界面更新醒陆,這需要迥然不同的方法瀑构。

在Google,TE需要在不同的項(xiàng)目中做不同的事情刨摩。我們經(jīng)常將TE的工作描述為"從中間開始(starting in the middle)"寺晌,因?yàn)門E必須保持足夠的靈活世吨,能夠迅速融入一個(gè)產(chǎn)品團(tuán)隊(duì)的文化和現(xiàn)狀。如果做測試計(jì)劃已經(jīng)來不及了呻征,那就干脆不做了耘婚。如果一個(gè)項(xiàng)目最需要的是測試,那就做一個(gè)簡單夠用的指導(dǎo)性計(jì)劃陆赋。一些測試教條所倡導(dǎo)的從頭就介入的模式沐祷,在Google并不適用。

下面是我們關(guān)于TE職責(zé)的一般性描述奏甫。

  • 測試計(jì)劃和風(fēng)險(xiǎn)分析戈轿;
  • 評(píng)審需求、設(shè)計(jì)阵子、代碼和測試思杯;
  • 探索式測試;
  • 用戶場景挠进;
  • 編寫測試用例色乾;
  • 執(zhí)行測試用例;
  • 眾包(譯注:crowdsourcing领突,是互聯(lián)網(wǎng)帶來的新的生產(chǎn)組織形式暖璧。一個(gè)公司或機(jī)構(gòu)把過去由員工執(zhí)行的工作任務(wù),以自由自愿的形式外包給非特定的(通常是大型的)大眾網(wǎng)絡(luò)的做法)君旦;
  • 使用統(tǒng)計(jì)澎办;
  • 用戶反饋。

測試人員要處理的是真正的文檔和其他臨時(shí)性的事物金砍。在項(xiàng)目的早期階段局蚀,測試人員編寫測試計(jì)劃;然后恕稠,他們創(chuàng)建和執(zhí)行測試用例琅绅,編寫bug報(bào)告;接下來是準(zhǔn)備覆蓋度報(bào)告鹅巍,收集用戶滿意度和軟件質(zhì)量數(shù)據(jù)千扶。在軟件成功發(fā)布(或失敗)之后骆捧,很少有人會(huì)問及測試產(chǎn)物是什么澎羞。如果軟件深受人們喜愛,大家就會(huì)認(rèn)為測試所作所為是理所應(yīng)當(dāng)?shù)牧参蝗绻浖茉愀庾苯剩藗兛赡芫蜁?huì)質(zhì)疑測試工作。但其實(shí)也沒人真正想去了解測試到底做了什么。

測試計(jì)劃是最早出現(xiàn)摆碉、最先被遺忘的測試產(chǎn)物塘匣。

下面是我們希望測試計(jì)劃具有的一些特性。

  • 及時(shí)地更新巷帝。
  • 描述了軟件的目標(biāo)和賣點(diǎn)忌卤。
  • 描述了軟件的結(jié)構(gòu)、各種組件和功能特性的名稱楞泼。
  • 描述了軟件的功能和操作簡介驰徊。

從純粹測試的角度看,我們擔(dān)心的是測試計(jì)劃的投入和價(jià)值產(chǎn)出是否匹配堕阔。

  • 不必花過多的時(shí)間去撰寫棍厂,必須隨時(shí)可以被修改。
  • 應(yīng)該描述必測點(diǎn)超陆。
  • 應(yīng)該能在測試中提供有用的信息牺弹,從而幫助確定進(jìn)展以及覆蓋率上的不足。

ACC(Attribute Component Capability时呀,即特質(zhì)张漂、組件、能力谨娜。這是一種測試計(jì)劃的替代方法航攒,參見http://googletesting.blogspot.com/2011/10/google-test-analytics-now-in-open.html)可以做測試計(jì)劃的替代。

特質(zhì)是系統(tǒng)的形容詞趴梢,代表了產(chǎn)品的品質(zhì)和特色漠畜,是區(qū)別于競爭對(duì)手的關(guān)鍵。

源碼工具:一系列用于簡化創(chuàng)建工作環(huán)境坞靶、提交代碼變更憔狞、代碼風(fēng)格檢查的工具√渤睿可以用工具瀏覽數(shù)億萬行的代碼躯喇,發(fā)現(xiàn)并預(yù)防重復(fù)的代碼辫封。還有用于建立大規(guī)模索引和代碼重構(gòu)的工具硝枉。

開發(fā)工具:集成開的發(fā)環(huán)境的一些插件,讓其他各種工具適應(yīng)google的代碼并連接后端的云服務(wù)倦微。代碼審查工具妻味,通過在審查階段嵌入相關(guān)的信號(hào),來快速完成高質(zhì)量的代碼審查欣福。

構(gòu)建框架:構(gòu)建系統(tǒng)支持自動(dòng)式责球,交互式,可以把原本需要數(shù)小時(shí)的任務(wù)縮短到數(shù)秒

測試基礎(chǔ)架構(gòu):規(guī)模化的持續(xù)集成雏逾,開發(fā)人員的每次代碼提交都會(huì)引發(fā)自動(dòng)測試嘉裤;另一方面是規(guī)模化的web測試栖博,每個(gè)google產(chǎn)品都會(huì)啟動(dòng)數(shù)十萬個(gè)瀏覽器會(huì)話屑宠,對(duì)各種不同的瀏覽器平臺(tái)組合進(jìn)行測試。

本地化工具
度量仇让,可視化和報(bào)表:管理所有產(chǎn)品的bug典奉,跟蹤所有研發(fā)活動(dòng)中工程師的各項(xiàng)指標(biāo)。


技能丧叽、稀缺性卫玖、自動(dòng)化和迭代集成。

參考資料

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末假瞬,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子迂尝,更是在濱河造成了極大的恐慌笨触,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,858評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件雹舀,死亡現(xiàn)場離奇詭異芦劣,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)说榆,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,372評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門虚吟,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人签财,你說我怎么就攤上這事串慰。” “怎么了唱蒸?”我有些...
    開封第一講書人閱讀 165,282評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵邦鲫,是天一觀的道長。 經(jīng)常有香客問我神汹,道長庆捺,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,842評(píng)論 1 295
  • 正文 為了忘掉前任屁魏,我火速辦了婚禮滔以,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘氓拼。我一直安慰自己你画,他們只是感情好抵碟,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,857評(píng)論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著坏匪,像睡著了一般拟逮。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上适滓,一...
    開封第一講書人閱讀 51,679評(píng)論 1 305
  • 那天唱歧,我揣著相機(jī)與錄音,去河邊找鬼粒竖。 笑死颅崩,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的蕊苗。 我是一名探鬼主播沿后,決...
    沈念sama閱讀 40,406評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼朽砰!你這毒婦竟也來了尖滚?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,311評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤瞧柔,失蹤者是張志新(化名)和其女友劉穎漆弄,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體造锅,經(jīng)...
    沈念sama閱讀 45,767評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡撼唾,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,945評(píng)論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了哥蔚。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片倒谷。...
    茶點(diǎn)故事閱讀 40,090評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖糙箍,靈堂內(nèi)的尸體忽然破棺而出渤愁,到底是詐尸還是另有隱情,我是刑警寧澤深夯,帶...
    沈念sama閱讀 35,785評(píng)論 5 346
  • 正文 年R本政府宣布抖格,位于F島的核電站,受9級(jí)特大地震影響咕晋,放射性物質(zhì)發(fā)生泄漏雹拄。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,420評(píng)論 3 331
  • 文/蒙蒙 一捡需、第九天 我趴在偏房一處隱蔽的房頂上張望办桨。 院中可真熱鬧筹淫,春花似錦站辉、人聲如沸呢撞。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,988評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽殊霞。三九已至,卻和暖如春汰蓉,著一層夾襖步出監(jiān)牢的瞬間绷蹲,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,101評(píng)論 1 271
  • 我被黑心中介騙來泰國打工顾孽, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留祝钢,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,298評(píng)論 3 372
  • 正文 我出身青樓若厚,卻偏偏與公主長得像拦英,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子测秸,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,033評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • 我于2001年以工程總監(jiān)的身份加入Google疤估。當(dāng)時(shí),Google大概有200名開發(fā)人員霎冯,但只有區(qū)區(qū)3位測試人員铃拇!...
    python測試開發(fā)閱讀 1,290評(píng)論 1 3
  • 組織架構(gòu) 經(jīng)常有人問“谷歌如何測試?” 本博之前有零零碎碎的介紹沈撞,現(xiàn)在我們來做一個(gè)系統(tǒng)的介紹慷荔。 在谷歌測試策略從來...
    python測試開發(fā)閱讀 1,712評(píng)論 0 3
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,163評(píng)論 25 707
  • 用兩張圖告訴你,為什么你的 App 會(huì)卡頓? - Android - 掘金 Cover 有什么料缠俺? 從這篇文章中你...
    hw1212閱讀 12,730評(píng)論 2 59
  • 翕晝徙深雪 白貌柏青埋 春將欲吐杏 柔枝撫窗臺(tái) 粉臉映春紅 無有景色來 但有聊骨性 躺與雪月白
    潺宵閱讀 98評(píng)論 0 0