發(fā)展趨勢(shì):TE-> SDET->SET進(jìn)化,測(cè)試工程師和軟件開發(fā)工程師的崗位在融合棺蛛,開發(fā)技能變成測(cè)試工程師的標(biāo)配技能之一枷畏。
一.「測(cè)試開發(fā)工程師」和「軟件測(cè)試工程師」職業(yè)定義
什么是軟件測(cè)試工程師
軟件測(cè)試工程師(Software Testing Engineer)指理解產(chǎn)品的功能要求瓮增,并對(duì)其進(jìn)行測(cè)試怎棱,檢查軟件有沒有錯(cuò)誤(Bug),測(cè)試軟件是否具有穩(wěn)定性(Robustness)绷跑,寫出相應(yīng)的測(cè)試規(guī)范和測(cè)試用例的專門工作人員拳恋。簡而言之,軟件測(cè)試工程師在一家軟件企業(yè)中擔(dān)當(dāng)?shù)氖恰百|(zhì)量管理”角色砸捏,及時(shí)發(fā)現(xiàn)軟件問題并及時(shí)督促更正谬运,確保產(chǎn)品的正常運(yùn)作隙赁。
什么是測(cè)試開發(fā)工程師
軟件測(cè)試開發(fā)工程師(英語:Software Design Engineer in Test),該詞來源于微軟吩谦。 SDET在敏捷軟件流程中起著越來越關(guān)鍵的作用鸳谜,既要快速了解各項(xiàng)知識(shí),又要對(duì)業(yè)務(wù)能夠快速上手式廷。 SDET是為了解決在推行敏捷過程中,軟件測(cè)試效率無法突破芭挽,并且在快速迭代中測(cè)試無法面面俱到滑废,而產(chǎn)生的一種保證開發(fā)與測(cè)試過程之間無縫轉(zhuǎn)換的一種角色。
二.SET和SDET是什么袜爪?
軟件“測(cè)試工程師”和“ QA”角色已經(jīng)存在了數(shù)十年蠕趁,2000年大規(guī)模的測(cè)試自動(dòng)化變得必要。 根據(jù)Wikipedia的說法辛馆,微軟在2005年創(chuàng)造了“軟件開發(fā)測(cè)試工程師”(SDET)的頭銜俺陋,而其他公司(例如Amazon和Apple)很快采用了它。Google為相同類型的角色創(chuàng)造了“測(cè)試中的軟件工程師Software Engineer in Test”(SET)的稱呼昙篙。
三.軟件測(cè)試工程師和測(cè)試開發(fā)工程師的區(qū)別
測(cè)試開發(fā)工程師就是測(cè)試中的軟件開發(fā)工程師或測(cè)試中的軟件設(shè)計(jì)工程師腊状,目前許多組織都要求測(cè)試開發(fā)工程師這類專業(yè)人員能夠參與應(yīng)用程序開發(fā)以及所開發(fā)軟件的測(cè)試。測(cè)試人員可以不參與軟件開發(fā)的手工測(cè)試人員或質(zhì)量分析人員苔可。測(cè)試開發(fā)工程師通常參與開發(fā)高質(zhì)量缴挖,健壯和高性能的代碼,這對(duì)于自動(dòng)化測(cè)試用例或設(shè)計(jì)可用作測(cè)試工具的測(cè)試框架很有用焚辅。測(cè)試開發(fā)工程師還審查了軟件產(chǎn)品的設(shè)計(jì)和過程映屋。測(cè)試開發(fā)工程師隨著DevOps,敏捷和持續(xù)測(cè)試的增長同蜻,它的職責(zé)正在增加棚点。
測(cè)試開發(fā)工程師具有熟練的開發(fā)和測(cè)試技能;另一方面,測(cè)試人員參與到準(zhǔn)備和執(zhí)行測(cè)試用例的工作中湾蔓,無論是手工還是自動(dòng)化瘫析。
測(cè)試人員是具有有限的編程技能,他們非常關(guān)注黑盒或功能測(cè)試卵蛉,而測(cè)試開發(fā)工程師是具有良好編程技能颁股,可以完成白盒測(cè)試以及測(cè)試自動(dòng)化方面的開發(fā)人員的工作。
測(cè)試開發(fā)工程師在軟件開發(fā)方面非常精通傻丝,他們可以參與測(cè)試自動(dòng)化工具的開發(fā)甘有。測(cè)試人員不需要開發(fā)測(cè)試自動(dòng)化工具,他們可以使用這些測(cè)試自動(dòng)化工具來自動(dòng)化軟件應(yīng)用程序或項(xiàng)目所需的測(cè)試用例葡缰。
通常在組織中亏掀,開發(fā)測(cè)試自動(dòng)化框架的測(cè)試人員或質(zhì)量分析人員承擔(dān)測(cè)試開發(fā)工程師的角色忱反,并且可以參與軟件應(yīng)用程序或其他測(cè)試自動(dòng)化框架的設(shè)計(jì)評(píng)審。
測(cè)試開發(fā)工程師的職責(zé)比測(cè)試工程師承擔(dān)的角色更多滤愕,如性能測(cè)試温算、安全測(cè)試、測(cè)試數(shù)據(jù)的自動(dòng)生成间影、測(cè)試環(huán)境設(shè)置注竿、開發(fā)測(cè)試自動(dòng)化工具等。
與手工測(cè)試人員不同魂贬,測(cè)試開發(fā)工程師需要具備領(lǐng)域知識(shí)巩割,這樣他們就可以參與設(shè)計(jì)測(cè)試用例。測(cè)試人員的所有職責(zé)都由測(cè)試開發(fā)工程師承擔(dān)付燥。
有些組織宣谈,如微軟,不區(qū)分測(cè)試人員的不同角色键科,并期望他們手工執(zhí)行測(cè)試闻丑,以及在需要時(shí)編寫測(cè)試自動(dòng)化腳本或代碼。組織現(xiàn)在強(qiáng)調(diào)測(cè)試人員至少要學(xué)習(xí)一種編程語言勋颖,他們可以使用這種語言在測(cè)試自動(dòng)化工具上工作嗦嗡。此外,自動(dòng)化測(cè)試工具如Selenium牙言、FitNesse酸钦、SAHI等具有靈活性,可以使用各種編程語言(如Python咱枉、Pearl卑硫、JAVA等)
結(jié)論:測(cè)試開發(fā)工程師不僅僅是一名測(cè)試工程師,它是開發(fā)人員和測(cè)試人員的混合體蚕断,他們接觸過項(xiàng)目管理欢伏,交互并理解最終用戶軟件需求,了解產(chǎn)品或領(lǐng)域知識(shí)亿乳,參與產(chǎn)品或軟件設(shè)計(jì)硝拧,知道如何編碼和構(gòu)建測(cè)試自動(dòng)化工具。
小故事:陸奇和SDET
微軟作為軟件時(shí)代發(fā)跡的軟件公司葛假,對(duì)于軟件開發(fā)有一套嚴(yán)格而切實(shí)有效的開發(fā)流程和管理模式方式障陶。它在組織架構(gòu)上是典型的開發(fā),測(cè)試聊训,和項(xiàng)目經(jīng)理三權(quán)分立的架構(gòu)抱究。這三個(gè)組織的最高領(lǐng)導(dǎo)人,在很多的組織里带斑,一直到VP以上才匯報(bào)給一個(gè)人鼓寺。舉例來說勋拟,在微軟的在線服務(wù)部門,陸奇才是第一個(gè)讓必應(yīng)的開發(fā)妈候,測(cè)試敢靡,和項(xiàng)目經(jīng)理的最高負(fù)責(zé)人匯報(bào)到一起的人。
微軟之所以采取這個(gè)架構(gòu)苦银,在1995年的時(shí)候是可以理解的啸胧。那個(gè)時(shí)候互聯(lián)網(wǎng)并不發(fā)達(dá),軟件開始主要靠軟盤后來靠光盤發(fā)售幔虏。如果有嚴(yán)重的bug吓揪,修復(fù)起來的成本非常的高。所以在當(dāng)時(shí)所计,穩(wěn)定的開發(fā)和嚴(yán)格的測(cè)試,以及明確的用戶需求都是一個(gè)軟件公司成功必不可少的团秽。
但是到了互聯(lián)網(wǎng)時(shí)代互聯(lián)網(wǎng)公司不是這樣的主胧。Facebook創(chuàng)始人馬克扎卡伯格提倡的是快速開發(fā)快速發(fā)布,有bug上線以后再修习勤。測(cè)試在新興的互聯(lián)網(wǎng)企業(yè)里面的比重大幅度的下降踪栋。
因?yàn)榛ヂ?lián)網(wǎng)公司的軟件都是自己部署的,所以可以很方便的修改和重新部署图毕,不需要測(cè)試的那么仔細(xì)夷都。與此同時(shí),現(xiàn)在互聯(lián)網(wǎng)已經(jīng)非常發(fā)達(dá)了予颤,即使傳統(tǒng)軟件公司要修一個(gè)嚴(yán)重的bug并讓所有買了軟件的人更新囤官,也不再是一件那么高成本的事情。所以微軟養(yǎng)著的龐大的測(cè)試隊(duì)伍蛤虐,不但消耗微軟大量的資源党饮,而且不產(chǎn)生實(shí)際的效益。
如果對(duì)軟件測(cè)試驳庭、接口刑顺、自動(dòng)化、性能測(cè)試饲常、LR腳本開發(fā)蹲堂、面試經(jīng)驗(yàn)交流。感興趣可以1079636098贝淤,群內(nèi)會(huì)有不定期的發(fā)放免費(fèi)的資料鏈接柒竞,這些資料都是從各個(gè)技術(shù)網(wǎng)站搜集、整理出來的霹娄,如果你有好的學(xué)習(xí)資料可以私聊發(fā)我能犯,我會(huì)注明出處之后分享給大家鲫骗。
陸奇領(lǐng)導(dǎo)的在線服務(wù)部門。其改革的主要目的是為了大幅度減少這些并不產(chǎn)生實(shí)際效益的測(cè)試部門踩晶。陸奇效仿其他互聯(lián)網(wǎng)公司执泰,在Bing開發(fā)組織中推行所謂的Combined Engineering。具體來說是把開發(fā)人員和測(cè)試人員混編渡蜻,大家都干同樣的事情术吝。這個(gè)Combined Engineering開始只是一兩個(gè)小組試點(diǎn)。并到宣傳這種做法的好處茸苇,開發(fā)效率高排苍,開發(fā)人員對(duì)自己的代碼負(fù)責(zé)等等。大約一年多以后整個(gè)必應(yīng)都被Combine掉了学密,測(cè)試作為一個(gè)獨(dú)立的組織在微軟的在線服務(wù)部門不存在了淘衙。專門的測(cè)試人員還留了一點(diǎn),大部分的和開發(fā)人員合并腻暮,并且匯報(bào)給同一個(gè)領(lǐng)導(dǎo)彤守。合并以后測(cè)試人員以開發(fā)人員的標(biāo)準(zhǔn)做績效考核的。結(jié)果就是測(cè)試人員的績效考核通常都比較低哭靖,而那些墊底的就被開除了具垫。微軟的陸奇通過這個(gè)Combined Engineering,解決了很多微軟高層一直不能解決的問題:裁減測(cè)試人員试幽。這個(gè)Combined Engineering后來就大幅度向微軟各個(gè)部門推廣了筝蚕。
有人喜歡創(chuàng)造世界,他們做了開發(fā)者铺坞;有的人喜歡開發(fā)者起宽,他們做了測(cè)試員。什么是軟件測(cè)試康震?軟件測(cè)試就是一場(chǎng)本該在用戶面前發(fā)生的災(zāi)難提前在自己面前發(fā)生了燎含,這會(huì)讓他們生出一種救世主的感覺,拯救了用戶腿短,也就拯救者這個(gè)軟件屏箍,避免了他們被卸載的命運(yùn)。
微信搜一搜【程序員一凡】關(guān)注這個(gè)文縐縐的程序員橘忱,關(guān)注后回復(fù)【面試】有我準(zhǔn)備的一線大廠面試資料和簡歷模板赴魁,希望大家都能找到心儀的工作,學(xué)習(xí)是一條時(shí)而郁郁寡歡钝诚,時(shí)而開懷大笑的路颖御,加油。如果你通過努力成功進(jìn)入到了心儀的公司,一定不要懈怠放松潘拱,職場(chǎng)成長和新技術(shù)學(xué)習(xí)一樣疹鳄,不進(jìn)則退。如果有幸我們江湖再見芦岂!