最近有不少做開(kāi)發(fā)的同學(xué)和剛畢業(yè)不久的同學(xué)咨詢我霎褐,都想做測(cè)試陋葡,但是基本都不太清楚測(cè)試工程師在一個(gè)公司扮演什么樣的角色以及未來(lái)的職業(yè)發(fā)展方向谭期。接下來(lái)簡(jiǎn)單說(shuō)一下我的個(gè)人觀點(diǎn),希望對(duì)想入坑的兆旬、剛?cè)肟拥募俪⒛承〩R同學(xué)有些幫助吧~~。--By 小明
一.測(cè)試工程師在一個(gè)公司扮演的基本角色是怎樣的?
先說(shuō)一下理想中的業(yè)務(wù)流程:1.需求評(píng)審會(huì)宿饱。首先產(chǎn)品經(jīng)理通過(guò)一系列的數(shù)據(jù)分析熏瞄,靈感激發(fā),用戶調(diào)研谬以,想出一系列的需求强饮,然后整理成PRD(產(chǎn)品需求文檔),以及做出原型为黎。確立之后邮丰,產(chǎn)品經(jīng)理號(hào)召開(kāi)發(fā)人員,測(cè)試人員以及相關(guān)設(shè)計(jì)人員開(kāi)一個(gè)需求評(píng)審會(huì)铭乾,會(huì)議中逐條討論每一個(gè)需求的具體功能以及實(shí)現(xiàn)方案剪廉,設(shè)計(jì)、開(kāi)發(fā)炕檩、測(cè)試同學(xué)從各自角度給出合理化建議斗蒋,比如一個(gè)簡(jiǎn)單的功能,沒(méi)必要用復(fù)雜的邏輯去實(shí)現(xiàn)笛质;一個(gè)非關(guān)鍵性功能的引入是否會(huì)增加現(xiàn)在app的負(fù)載泉沾,影響性能等。確立好所有需求后妇押,產(chǎn)品及時(shí)整理更新相關(guān)文檔以及原型供設(shè)計(jì)跷究、開(kāi)發(fā)和測(cè)試人員參考使用。
2.下面將會(huì)是設(shè)計(jì)同學(xué)去設(shè)計(jì)圖片資源敲霍,開(kāi)發(fā)同學(xué)去開(kāi)發(fā)相關(guān)需求俊马。此時(shí)測(cè)試同學(xué)需要根據(jù)需求文檔以及原型編寫(xiě)和設(shè)計(jì)測(cè)試用例(不知道測(cè)試用例是啥的請(qǐng)自行百度),一套叫每個(gè)人都能看懂的測(cè)試用例才是好用例色冀。個(gè)人感覺(jué)寫(xiě)好一套測(cè)試用例會(huì)對(duì)以后的測(cè)試回歸以及公司新人去了解app或者程序有很大的幫助潭袱。柱嫌、
3.測(cè)試用例編寫(xiě)設(shè)計(jì)完畢之后會(huì)與產(chǎn)品經(jīng)理和開(kāi)發(fā)同學(xué)開(kāi)測(cè)試用例評(píng)審會(huì)锋恬,討論測(cè)試用例設(shè)計(jì)的合理性以及測(cè)試難易度復(fù)雜度。當(dāng)然编丘,這一步的話某些剛發(fā)展起來(lái)的或者需求量不斷的公司都會(huì)省略与学,用節(jié)省下來(lái)的時(shí)間和人力成本去對(duì)接更多的需求,測(cè)試更多的需求以確保更多的新功能可以上線嘉抓,但是這樣多少會(huì)降低產(chǎn)品的質(zhì)量或者用戶體驗(yàn)索守,嗯,某些公司覺(jué)得這種犧牲是可接受的抑片。有些人會(huì)想卵佛,開(kāi)發(fā)在開(kāi)發(fā)新功能,你測(cè)試用例也寫(xiě)完了,這時(shí)候你很輕松啊截汪,還可以學(xué)習(xí)點(diǎn)新知識(shí)突破一下自己-疾牲,-。錯(cuò)了衙解,某些公司的需求是源源不斷的阳柔,開(kāi)發(fā)同學(xué)把一個(gè)版本給你提測(cè)之后,你介入測(cè)試蚓峦,他們開(kāi)始開(kāi)發(fā)下一版功能了舌剂,當(dāng)你測(cè)試上一版需求,這一版開(kāi)發(fā)完了又提測(cè)了暑椰。
4.接下來(lái)這一步是工作量最大的一步霍转,是什么呢?沒(méi)錯(cuò)一汽,就是一個(gè)字“測(cè)”谴忧。根據(jù)之前設(shè)計(jì)好的測(cè)試用例,逐條測(cè)試角虫。測(cè)試過(guò)程中出現(xiàn)bug需要提交到bug管理平臺(tái)沾谓,說(shuō)明bug的期望結(jié)果,實(shí)際結(jié)果以及復(fù)現(xiàn)步驟戳鹅,標(biāo)出bug的優(yōu)先級(jí)等等信息均驶,當(dāng)然信息越全越好,這樣開(kāi)發(fā)同學(xué)可以快速定位問(wèn)題枫虏,開(kāi)發(fā)同學(xué)收到bug郵件后會(huì)進(jìn)行bug的修復(fù)妇穴,修復(fù)之后會(huì)更改bug在用例管理平臺(tái)中的狀態(tài),如“已修復(fù)”隶债、“設(shè)計(jì)缺陷腾它,不予改正”等。如果是已修復(fù)bug你需要待開(kāi)發(fā)提交代碼死讹,你在打包平臺(tái)上重新打包驗(yàn)證你所報(bào)告的問(wèn)題瞒滴;若提到了設(shè)計(jì)缺陷,這可能是開(kāi)發(fā)同學(xué)覺(jué)得這不是需求文檔中的功能赞警,這時(shí)候你需要跟產(chǎn)品溝通確認(rèn)需求妓忍。測(cè)試過(guò)程中常用的幾個(gè)工具有抓包工具如Charles、fiddler等愧旦,數(shù)據(jù)庫(kù)操作Navicat等數(shù)據(jù)庫(kù)可視化工具世剖。這些工具是幫助你去定位bug在哪塊出現(xiàn)的問(wèn)題,比如是客戶端的問(wèn)題還是接口返回的數(shù)據(jù)就不對(duì)笤虫,是服務(wù)的問(wèn)題等旁瘫。如果公司正規(guī)的話那么恭喜你祖凫,你可以看到結(jié)構(gòu)明朗的接口文檔以及數(shù)據(jù)庫(kù)文檔,這回給你節(jié)省大量的時(shí)間去定位問(wèn)題酬凳,操作數(shù)據(jù)庫(kù)等蝙场。如果這些都沒(méi)有,那么你只能自己去問(wèn)開(kāi)發(fā)粱年,口頭溝通去把售滤,嗯也許你問(wèn)的時(shí)候他還在忙著寫(xiě)代碼-,-一個(gè)程序員在敲代碼的時(shí)候都不希望被打斷思路台诗,之后你該怎么做自己想把完箩。。拉队。
5.通過(guò)在測(cè)試環(huán)境的“摸爬滾打”弊知,修復(fù)了預(yù)期存在著的bug,無(wú)論是客戶端還是服務(wù)都達(dá)到了需求中的狀態(tài)粱快,此時(shí)可以郵件給產(chǎn)品秩彤,告知測(cè)試環(huán)境測(cè)試通過(guò),可以申請(qǐng)線上的回歸測(cè)試事哭,等待服務(wù)部署到灰度或者線上后漫雷,可以進(jìn)行一系列的回歸測(cè)試,尤其回歸之前出現(xiàn)的bug鳍咱,將風(fēng)險(xiǎn)降到最低降盹。最終線上環(huán)境功能正常后,那么你就又了解了一樁需求谤辜,那是你最釋?xiě)训臅r(shí)候蓄坏,可以聽(tīng)聽(tīng)小歌,打把王者榮耀開(kāi)心2分鐘哦~之后就等著發(fā)版把丑念,發(fā)版之后在線上再回歸一下就OK了涡戳。以上幾點(diǎn)差不多是一個(gè)剛?cè)腴T(mén)的測(cè)試同學(xué)應(yīng)該了解在公司中扮演的角色。
二.測(cè)試過(guò)程中所用到的管理平臺(tái)和工具有哪些脯倚?
1.bug管理工具渔彰,這個(gè)平臺(tái)很多,都是基于web的挠将,基本功能全是類(lèi)似的胳岂,無(wú)非是對(duì)bug進(jìn)行跟蹤定位编整,如禪道舔稀,mantis,readmine等掌测,你會(huì)用一個(gè)内贮,別的基本無(wú)壓力了就产园。
2.項(xiàng)目管理工具,同上夜郁,平臺(tái)也很多什燕,會(huì)一個(gè)就好如readmine,trello等竞端。
3.測(cè)試用例管理平臺(tái)屎即,其實(shí)最重要的是要會(huì)設(shè)計(jì)用例,而不是使用平臺(tái)事富。平臺(tái)有很多如禪道技俐,testlink等。
4.抓包工具统台,這個(gè)是使用量最多的一個(gè)工具雕擂,比較好用的有Charles和Fiddler,原理都一樣贱勃,同時(shí)也可以作為Mock測(cè)試使用井赌,-,-不懂Mock測(cè)試的自行百度贵扰。
5.數(shù)據(jù)庫(kù)操作可視化如:Navicat仇穗。要熟悉數(shù)據(jù)庫(kù)的基本操作,最基礎(chǔ)的增刪改查得會(huì)把戚绕。
到此為止的話仪缸,你作為一個(gè)功能測(cè)試的話,把以上用熟用透基本就夠用了列肢,接下來(lái)說(shuō)下未來(lái)職業(yè)的發(fā)展以及可能所涉及到的更多的工具恰画。
三.測(cè)試工程師的職業(yè)發(fā)展方向有哪幾類(lèi)?
1.功能測(cè)試瓷马,也叫黑盒拴还,無(wú)需掌握代碼能力,只要將以上東西吃透就可以了欧聘,如果在金融公司或者業(yè)務(wù)負(fù)責(zé)度較高的公司片林,做久了你你可能對(duì)其中的業(yè)務(wù)邏輯了解的很透徹,未來(lái)可以做資深測(cè)試工程師怀骤。
2.自動(dòng)化測(cè)試工程師费封,這個(gè)分幾類(lèi),①UI自動(dòng)化 ②接口自動(dòng)化③性能自動(dòng)化蒋伦。
其中UI自動(dòng)化是投入產(chǎn)出比最低的一個(gè)弓摘,因?yàn)楣径紩?huì)有大量的功能測(cè)試,而且一些體驗(yàn)性功能是無(wú)法用UI自動(dòng)化去簡(jiǎn)單斷言的痕届,所以這個(gè)要等到你的團(tuán)隊(duì)或者公司規(guī)模達(dá)到一定時(shí)候才可能去做的一個(gè)事情韧献,簡(jiǎn)單講末患,前期做的話無(wú)非就是花大量時(shí)間去做手動(dòng)點(diǎn)擊下就能解決的問(wèn)題。涉及到的框架有Robotium锤窑、MonkeyRunner璧针、Robotframework+appium以及python直接驅(qū)動(dòng)appium;其中定位元素是UI自動(dòng)化的關(guān)鍵渊啰,定位元素的工UI Automator探橱,這個(gè)當(dāng)然得需要你對(duì)安卓的布局有所了解以及xpath的定位方法,初學(xué)者建議robotframework+appium這套绘证,易上手走搁。當(dāng)然了,每個(gè)公司可能都會(huì)用自己的框架迈窟,他們也有對(duì)框架自己的理解或者適合哪種框架私植。
接口自動(dòng)化是一個(gè)投入產(chǎn)出比相對(duì)較高的一類(lèi),因?yàn)榭梢曰ㄙM(fèi)較短的時(shí)間集中對(duì)大量的接口進(jìn)行測(cè)試车酣,可以大大的節(jié)省人力成本曲稼,也是很多公司現(xiàn)在主要在去做的一件事情,涉及到的工具有Jmeter湖员、Postman或者Robotframework贫悄,各有特點(diǎn),Jmeter可以適合做接口性能測(cè)試娘摔,因?yàn)槔锩鏁?huì)有一些接口傳遞過(guò)程的具體數(shù)據(jù)如響應(yīng)時(shí)間等窄坦;Postman比較輕量級(jí)了,簡(jiǎn)單的斷言凳寺,就是對(duì)接口的是否正確性做判斷鸭津;會(huì)問(wèn)了咋又出現(xiàn)了Robotframework,沒(méi)錯(cuò)肠缨,他的原理比較特殊逆趋,是借用各種已經(jīng)封裝好的library庫(kù),直接用關(guān)鍵字調(diào)用庫(kù)中方法做驅(qū)動(dòng)晒奕,因此只要加入了做接口測(cè)試用的庫(kù)闻书,就可以對(duì)接口進(jìn)行自動(dòng)化測(cè)試,當(dāng)然他也可以做UI自動(dòng)化脑慧,因此是多樣性好魄眉。這三種都同時(shí)可以借用Jenkins部署自動(dòng)化,可以集成自動(dòng)化闷袒。
性能自動(dòng)化也是一個(gè)投入產(chǎn)出比相對(duì)較高的一類(lèi)坑律,通過(guò)監(jiān)控測(cè)試或者負(fù)載測(cè)試等等,對(duì)app或者程序進(jìn)行監(jiān)控?cái)?shù)據(jù)或者壓力測(cè)試霜运,通過(guò)對(duì)數(shù)據(jù)的收集分析出性能的優(yōu)劣脾歇,主要會(huì)涉及大的工具可能有:LoadRunner蒋腮,Jmeter淘捡,Instruments(ios)以及Emmagee(安卓)藕各,后兩者基本都是通過(guò)對(duì)內(nèi)存、cpu焦除、網(wǎng)路流量激况、電量以及安裝啟動(dòng)跳轉(zhuǎn)的響應(yīng)時(shí)間做實(shí)時(shí)監(jiān)控,然后分析數(shù)據(jù)膘魄,給出合理化結(jié)論乌逐。
3.測(cè)試開(kāi)發(fā)工程師
我個(gè)人理解的測(cè)試開(kāi)發(fā)是這樣的,他需要比較強(qiáng)的代碼能力创葡,會(huì)開(kāi)發(fā)其他好用浙踢、趁手的工具來(lái)提高工作效率,比如數(shù)據(jù)自動(dòng)生成灿渴、報(bào)表自動(dòng)生成洛波、報(bào)bug工具等。與自動(dòng)化測(cè)試合作優(yōu)化測(cè)試框架骚露,提高框架執(zhí)行case的效率等蹬挤。然后具有Review代碼的能力,可以做白盒測(cè)試棘幸。
4.專(zhuān)項(xiàng)測(cè)試工程師
對(duì)某個(gè)領(lǐng)域有自己的專(zhuān)長(zhǎng)測(cè)試焰扳,比如sdk測(cè)試,安全測(cè)試误续,兼容性測(cè)試等吨悍,目前還沒(méi)遇到過(guò)這種類(lèi)型的人才,我就不做過(guò)多描述了蹋嵌,哈哈因?yàn)槲乙膊粚儆趯?zhuān)項(xiàng)測(cè)試畜份。別給大家往錯(cuò)誤的道上引導(dǎo)。
5.Leader
走管理欣尼,需要做的是你個(gè)人的綜合實(shí)力的提升以及管理經(jīng)驗(yàn)爆雹。需要怎么做還得看你自己嘍~
以上就是測(cè)試工程師未來(lái)可能會(huì)邁向的幾個(gè)方向吧,選擇好自己的方向愕鼓,為自己的職業(yè)規(guī)劃確立好最初的目標(biāo)钙态,希望能幫助到剛?cè)肟踊蛘咭肟拥男氯藗儈
我就是個(gè)做了半年Android開(kāi)發(fā),2年多測(cè)試的測(cè)試小菜鳥(niǎo)菇晃,身體不適在家寫(xiě)的一點(diǎn)這些年來(lái)對(duì)測(cè)試的一些淺談册倒,希望能幫助到需要幫助的人,純手打磺送,不喜勿噴驻子,因?yàn)椴A牟右猓灼扑椋~
Thanks崇呵,ming~