本文是一篇譯文,翻譯的測(cè)試大師James Bach的一篇總結(jié)Tester類型的文章,也可將本文看作測(cè)試職業(yè)發(fā)展的不同方向的建議。原文叫做Seven Kinds of Testers
可愛(ài)的James大叔還對(duì)每種類型的Tester給出了忠告。其實(shí)后最三種并非專職的Tester,而是做著和Tester相關(guān)工作的其他工種。
Administrative Tester-管理型Tester
該類型的Tester主要是做task或者做卡(敏捷項(xiàng)目中的Story卡),目標(biāo)就是把手上的工作完成。
低水平的管理型Tester主要就是跑case這類的手工測(cè)試。
高水平的管理型Tester是協(xié)調(diào)者,例如測(cè)試經(jīng)理,測(cè)試lead,主要工作是獲取資源,更新Dashboard等。
來(lái)自James大叔的忠告:不要只關(guān)注測(cè)試流程而忽略了測(cè)試本身。
[本人拙見(jiàn):這種類型的Tester在外包公司很常見(jiàn),外包公司的測(cè)試會(huì)有很多溝通交流的工作,真正用在測(cè)試上的時(shí)間并不多,且測(cè)試的東西大多很簡(jiǎn)單]
Technical Tester - 技術(shù)型Tester
該類型的Tester擅長(zhǎng)構(gòu)建和使用工具,喜歡從代碼角度考慮問(wèn)題。因?yàn)樗麄冋f(shuō)著程序員的語(yǔ)言,所以很倡導(dǎo)可測(cè)試性。在Google和Microsoft,這類人叫做SDET。
來(lái)自James大叔的忠告:太著迷于工具,從而會(huì)避免測(cè)試那些不容易使用工具測(cè)試的東西,更傾向?qū)W習(xí)工具而不是測(cè)試。
[本人拙見(jiàn):可測(cè)試性對(duì)于TDD來(lái)說(shuō)很重要。合適的工具也很有用,自動(dòng)化測(cè)試不都是使用工具么。。。很多公司還會(huì)開(kāi)發(fā)自己的測(cè)試工具。雖然James大叔有點(diǎn)極端,但是,工具只是輔助手段,工具服務(wù)于測(cè)試,核心還是測(cè)試本身。就像很多人會(huì)覺(jué)得自動(dòng)化測(cè)試比手工測(cè)試高級(jí),就測(cè)試本身來(lái)說(shuō),自動(dòng)化可以代替重復(fù)的工作,提高效率,構(gòu)建安全網(wǎng)。手工測(cè)試能充分發(fā)揮測(cè)試人員的主觀能動(dòng)性,能在自動(dòng)化節(jié)省出的那些時(shí)間里,更加深入,全面的探索。好的手工測(cè)試人員是很有價(jià)值的。]
Analytical Tester -分析型Tester
該類型的Tester喜歡使用模型,數(shù)學(xué)成績(jī)很好。很會(huì)運(yùn)用各種圖,矩陣,表等,喜歡做組合測(cè)試。
來(lái)自James大叔的忠告:傾向于規(guī)劃癱瘓(本人:過(guò)于追求計(jì)劃的意思么?)常常夢(mèng)想最優(yōu)而不是最合適的測(cè)試集(本人:太追求完美么?)
[本人拙見(jiàn):測(cè)試是需要經(jīng)過(guò)思考和設(shè)計(jì)的,不是有些人想的那樣,測(cè)試只是上來(lái)就點(diǎn)點(diǎn)點(diǎn)。我們有很多幫助測(cè)試設(shè)計(jì)的方法和模型(如邊界值,判定表,組合測(cè)試等)。Tester都知道,測(cè)試用例是無(wú)法窮舉的,那些方法和模型能幫助我們?cè)跓o(wú)盡的測(cè)試用例中挑選出覆蓋率最優(yōu)的測(cè)試集。]
Social Tester - 社交型Tester
社交型Tester需要你(來(lái)自James大叔的吶喊)!社交型Tester擅長(zhǎng)發(fā)現(xiàn)所有能幫助他們的人,并且更愿意在一個(gè)團(tuán)隊(duì)而不是單獨(dú)工作。他們明白并不是所有人都需要想一個(gè)整體解決方案,其他人通常已經(jīng)完成了需要完成的工作。他們也知道測(cè)試不一定需要編程,但編程肯定有幫助。一個(gè)好的社交型測(cè)試會(huì)培養(yǎng)社交資本,為他人提供可信賴的服務(wù)。
來(lái)自James大叔的忠告:他們可以偷懶,看上去老是游手好閑。并且犧牲工作時(shí)間過(guò)度社交。
[本人拙見(jiàn):Tester確實(shí)需要很好的溝通交流能力。需求不明確,要和BA和客戶溝通;發(fā)現(xiàn)Bug了,要和Dev溝通;自己不會(huì)寫代碼,要發(fā)動(dòng)Dev們來(lái)寫。作為一個(gè)Tester,需要充分利用團(tuán)隊(duì)可利用的資源,來(lái)協(xié)助自己更好的完成測(cè)試工作,而不是一個(gè)人悶頭在那默默的把所有事都做了。]
Empathic Tester - 投入型Tester
很有同理心,很能體會(huì)用戶的需要。他們和用戶專家不太一樣。因?yàn)樽鲆粋€(gè)模擬用戶的測(cè)試和做測(cè)試的用戶是不一樣的。沒(méi)有技術(shù)背景的測(cè)試通常采用這種方式。James大叔表示他之前一直沒(méi)有承認(rèn)也沒(méi)有尊重過(guò)這種方式。
來(lái)自James大叔的忠告:投入型Tester通常很難描述清楚他們做了什么以及怎么做的。
[本人拙見(jiàn):聽(tīng)起來(lái)很像易用性和可用性測(cè)試這類非功能測(cè)試范疇,確實(shí)不好描述和度量。]
User Expert -用戶專家
也稱為領(lǐng)域?qū)<一蛘咧黝}專家。他們不認(rèn)為自己是測(cè)試,但是卻作為潛在的幫助測(cè)試的用戶。
來(lái)自James大叔的忠告:沒(méi)有被定義為Tester,沒(méi)有趨向?qū)W習(xí)和開(kāi)發(fā)測(cè)試技能。
[本人拙見(jiàn):人家本來(lái)就不是Tester,但Tester也需要這種Sense。]
Developer - 開(kāi)發(fā)
開(kāi)發(fā)也經(jīng)常測(cè)試。他們的理想位置是單元測(cè)試,同時(shí)也設(shè)計(jì)可測(cè)試的產(chǎn)品。技術(shù)型測(cè)試可以同時(shí)作為開(kāi)發(fā),當(dāng)開(kāi)發(fā)進(jìn)入測(cè)試,也通常作為技術(shù)型測(cè)試。
來(lái)自James大叔的忠告:沒(méi)有被定義為Tester,沒(méi)有趨向?qū)W習(xí)和開(kāi)發(fā)測(cè)試技能。
[本人拙見(jiàn):懂測(cè)試的開(kāi)發(fā)絕對(duì)比不懂測(cè)試的開(kāi)發(fā)受歡迎~如James大叔所說(shuō),產(chǎn)品代碼都是開(kāi)發(fā)寫的,如果開(kāi)發(fā)在寫代碼的時(shí)候能考慮產(chǎn)品的可測(cè)性,將大大減輕測(cè)試工作的難度。]
我也一直在思考Tester的發(fā)展方向的問(wèn)題,最常見(jiàn)的就是Tester-》Senior Tester-》Test lead-》Test Manager這條路。James大叔從另一個(gè)角度給出了另一種選擇。我不認(rèn)為,一輩子寫代碼(不做PM)或者一輩子做一個(gè)Tester(不做Manager)是一件羞恥的事情,試想一個(gè)Tester集齊以上七(zhao)種(huan)技(shen)能(long),或者在任何一方面做的非常精深,還怕找不到自身價(jià)值么。