在軟件測試中談軟件測試工程師的前景如何及需要通過(guò)哪些認證?
軟件測試職場(chǎng)的持續升溫乃至火爆這一現象可從各大招聘網(wǎng)站和各個(gè)IT招聘專(zhuān)場(chǎng)的情況看到。一方面,在職位的需求方面,軟件測試工程師這一職位占據了 IT職位需求前三甲的位置。另一方面在薪資水平方面,軟件測試工程師的身價(jià)也逐漸被看好。下面分別從這兩個(gè)方面來(lái)了解一下軟件測試這一職位在職場(chǎng)中的份量。
軟件測試工程師職位需求報道
據中國青年報報道,近日,英特爾、微軟等跨國IT企業(yè)及騰訊、攜程、聯(lián)想、百度等國內IT企業(yè)紛紛開(kāi)出極具誘惑力的條件,吸引IT人才加盟。其中,軟件測試工程師占據了需求冠軍位置。
來(lái)自中華英才網(wǎng)的職位數據顯示,軟件測試工程師、高級軟件工程師、網(wǎng)絡(luò )安全工程師等職位成為今年IT企業(yè)的招聘重點(diǎn),其中對軟件測試工程師的招聘需求尤為明顯,目前僅中華英才網(wǎng)就有300多個(gè)崗位空缺,多數企業(yè)瞄準有2年以上經(jīng)驗的工程師。
據國內知名招聘網(wǎng)站前程無(wú)憂(yōu)最新人才市場(chǎng)數據顯示,軟件測試工程師將成為2006年最緊缺的人才,該類(lèi)職位的需求主要集中在沿海發(fā)達城市,其中北京、上海的需求量分別占去33%和29%。
據中新網(wǎng)北京報道:2006年2月中、下旬,在國展舉辦的大型招聘會(huì )上,記者了解到,多家企業(yè)紛紛打出各類(lèi)高薪招聘軟件測試人員的海報,出人意料的是收到的簡(jiǎn)歷尚不足招聘崗位數的50%,而合格的竟不足30%。記者還了解到,目前像微軟、愛(ài)立信、用友等著(zhù)名IT企業(yè),因為招聘不到合適的人才,而不得已著(zhù)手培養自己的軟件測試人才。在招聘會(huì )上,應聘軟件測試人員的求職者不太多。
軟件測試這一職場(chǎng)“新貴”的需求為什么像雨后春筍一樣?而面對這樣的人才需求還不能及時(shí)產(chǎn)生合格有效的人才供應?其實(shí)這種現象是符合我國軟件產(chǎn)業(yè)發(fā)展的。在我國,軟件產(chǎn)業(yè)的興起和發(fā)展也就是這短短十幾年。在前面的興起和發(fā)展壯大階段,一般的軟件公司都是重開(kāi)發(fā)輕測試,甚至存在把測試工作都放在用戶(hù)那里去做的錯誤思想;追求眼前功能的實(shí)現,開(kāi)發(fā)軟件追求“短”、 “平”、“快”。不太考慮性能和功能的優(yōu)化。軟件產(chǎn)業(yè)發(fā)展到今天,如果還是用以前的思路、辦法(公司里絕大部分、甚至全部都是開(kāi)發(fā)人員在做產(chǎn)品,只要能做出來(lái)可以用就行),企業(yè)的產(chǎn)品肯定沒(méi)有競爭力,從而導致這樣的軟件企業(yè)生存極其困難。正是因為這個(gè)原因,軟件測試人才以往一直被中小IT企業(yè)所忽視,只有一些知名企業(yè)才有專(zhuān)門(mén)的軟件測試崗位,因此國內測試人才的儲備相對較少。造成現在的測試人才供需極不平衡,F在,更多的國內企業(yè)認識到測試的重要性,紛紛加大對軟件測試技術(shù)人員的招聘。對軟件測試工程師的認識也從過(guò)去的“可有可無(wú)”到了今天的“測”才難求了。
“軟件測試工程師地位‘翻天覆地’的變化,源自信息產(chǎn)業(yè)的發(fā)展以及軟件企業(yè)自身、用戶(hù)成熟度的不斷加深! 著(zhù)名軟件測試專(zhuān)家、清華大學(xué)教授鄭人杰教授如示表示。一方面,計算機使用越來(lái)越普及,越來(lái)越多的領(lǐng)域使用了計算機,特別是一些重要領(lǐng)域如國防、銀行、金融、通訊、航天等,他們對軟件質(zhì)量要求很高。同時(shí)一些重大事故的發(fā)生,也引發(fā)了人們對軟件質(zhì)量的關(guān)注。如2002年歐洲載重10噸的阿麗亞娜5型 火箭發(fā)射失敗,最后證實(shí)是軟件質(zhì)量問(wèn)題;還有國內的一些銀行金融系統,因軟件質(zhì)量問(wèn)題不得不暫停營(yíng)業(yè)。毋庸置疑,在經(jīng)歷了長(cháng)期的不為人知和可有可無(wú)后,軟件測試工程師目前已變得炙手可熱。有調查數據顯示,目前國內軟件企業(yè)測試人員和開(kāi)發(fā)人員之比為1:5,與國外軟件業(yè)1:1的比例相去甚遠,軟件測試人才的招聘戰將進(jìn)一步繼續。
其實(shí)我覺(jué)得軟件測試工程師是個(gè)非常有前途的職業(yè).現在軟件測試工程師的缺口非常的大.
程序員跟測試員是相互對應的.以前國內認為只要有好的程序員就行了,其實(shí)還要有好的測試員.現在國內的軟件廠(chǎng)商越來(lái)越注重測試員.
軟件測試工程師
一提到軟件測試工程師,很多人就會(huì )想到那些反復使用軟件,試圖在頻繁操作中尋找到錯誤發(fā)生的低層次人員或者軟件用戶(hù)。其實(shí)這是一種錯誤的概念,軟件測試早已超越了用戶(hù)使用來(lái)發(fā)現Bug的基本測試階段。
陳宏剛介紹說(shuō),微軟的軟件測試工程師分為三種:測試執行者(Basic Software Tester)、測試工具軟件開(kāi)發(fā)工程師(Software Development Engineer in Test)和高級軟件測試工程師(Ad_hoc Tester)
測試執行者負責理解產(chǎn)品的功能要求,然后根據測試規范和測試案例對其進(jìn)行測試,檢查軟件有沒(méi)有錯誤,決定軟件是否具有穩定性,屬于最低級的執行角色。
測試工具軟件開(kāi)發(fā)工程師負責寫(xiě)測試工具代碼,并利用測試工具對軟件進(jìn)行測試;或者開(kāi)發(fā)測試工具為軟件測試工程師服務(wù)。產(chǎn)品開(kāi)發(fā)后的性能測試、提交測試等過(guò)程,都有可能要用到開(kāi)發(fā)的測試工具。對技術(shù)要求最強的是這些人,因為它們要具備寫(xiě)程序的技術(shù)!耙驗椴煌a(chǎn)品的特性不一樣,對測試工具要求也是不同的,就像Windows的測試工具不能用于Office,office的也不能用于SQLserver,微軟很多測試工程師就是負責專(zhuān)門(mén)為某個(gè)產(chǎn)品寫(xiě)測試程序的!
而Ad_hoc Testet屬于比較有經(jīng)驗,自己會(huì )找方向并做的很好的測試工程師,這要求具有很強的創(chuàng )造性。剛進(jìn)入微軟時(shí),老板也是只給陳宏剛一個(gè)操作流程,每天就按照這個(gè)規程去做,幾天下來(lái),一個(gè)Bug都沒(méi)有發(fā)現。陳宏剛也很沮喪,覺(jué)得這樣挺對不起公司,后來(lái)自己?jiǎn)?wèn)自己:為什么非要這樣做!于是換了其他的方法試試,令他吃驚的是,一下就找到很多嚴重的Bug,當時(shí)也不敢聲張。有一天,他找到10多個(gè)非常嚴重的Bug,開(kāi)發(fā)經(jīng)理一下就驚呆了,怒沖沖的跑到陳宏剛面前問(wèn):“你是不是改變了測試方式和測試步驟?”陳宏剛有些嚇住,說(shuō)道:“可能改變了一點(diǎn)!睂Ψ秸f(shuō):“我非常生氣,但我不是生你的氣,而是因為以前測試人員水平太差,或者以前的測試方面有問(wèn)題,軟件中有些Bug存在了半年甚至一年,但直到現在才發(fā)現,現在修補這些錯誤要困難很多!”后來(lái)陳宏剛得到了老板的贊許,可以按照自己的想法去做測試。對此,陳宏剛感受頗深:“一方面我體會(huì )到了微軟非常鼓勵創(chuàng )造的文化,同時(shí)也感到只遵守教條不是好的測試人員,就和用戶(hù)一樣了。做軟件測試工程師同樣需要開(kāi)拓和創(chuàng )造性!
在開(kāi)發(fā)管理上,測試不應該歸屬于項目管理,也不應該歸屬開(kāi)發(fā)人員。這三個(gè)部門(mén)應該是并駕齊驅?zhuān)嗷f(xié)作,測試工程師最終決定產(chǎn)品是否能夠發(fā)布。
軟件測試工程師的素質(zhì)
因為軟件測試仍然處在發(fā)展階段,還沒(méi)有上升到理論層次。對人員的評測,包括微軟在內,都還沒(méi)有一個(gè)統一標準,因此評定軟件測試工程師只能根據工作實(shí)踐進(jìn)行自然淘汰。
軟件測試對邏輯思維、學(xué)習能力、反應要求很高,是否有嚴密的思維和逆向思維也非常重要。陳宏剛介紹說(shuō),在五六個(gè)人的測試小組時(shí),一半以上的Bug都是他找到的。他認為這同自己數學(xué)專(zhuān)業(yè)的背景關(guān)系密切,數學(xué)中有邏輯思維的培訓,要善于找出來(lái)各方面的因素。比如要證明一個(gè)定理,各個(gè)方面都考慮到,一個(gè)條件不滿(mǎn)足就無(wú)法證明;但如果證明其不成立,最常用的就是找到一個(gè)反例,只要有一點(diǎn)證明不成立就可以了,軟件測試也是找這一點(diǎn)。
做測試還要考慮到所有出錯的可能性,還要做一些不是按常規做的、非常奇怪的事。除了漏洞檢測,測試還應該考慮性能問(wèn)題,也就是要保證軟件運行得很好,沒(méi)有內存泄漏,不會(huì )出現運行越來(lái)越慢的情況;在不同的使用環(huán)境下,考慮軟件的兼容性同樣重要。軟件測試同產(chǎn)品的規模也有很大的關(guān)系,因為軟件的bug往往出在大型軟件的連接處。
做軟件測試工程師需要對軟件抱有懷疑態(tài)度。這是因為開(kāi)發(fā)人員喜歡想當然,總是找一些有利于自己程序執行的數據,有些開(kāi)發(fā)人員甚至認為不利于程序執行的數據是對代碼的玷污和褻瀆。而軟件測試卻要策略性的準備各種數據,從每個(gè)細節上設計不同的應用場(chǎng)景,不去想當然的假定任何一個(gè)數據是可行的。
在職業(yè)素質(zhì)和交際方面方面,并不是測試工程師愛(ài)挑別人毛病才好,反而這個(gè)工作要求很強的溝通能力。經(jīng)常的和開(kāi)發(fā)人員進(jìn)行溝通,說(shuō)話(huà)辦事要很得當,不能指責別人,否則會(huì )事倍功半。性格隨和才能和開(kāi)發(fā)人員順暢的溝通,對人和對事是完全不同的兩個(gè)問(wèn)題。
如何培養優(yōu)秀的軟件測試工程師
朗川軟件測試工程師張建陽(yáng)從北大力學(xué)系畢業(yè)之后,曾開(kāi)發(fā)流體力學(xué)分析軟件,軟件缺少測試而產(chǎn)生的問(wèn)題給她留下了很深的印象。后來(lái)去大唐電信做UIM(統一消息管理系統),她發(fā)現盡管公司為了鼓勵員工找bug采取了很多獎勵方法,但還是很少人愿意去做系統測試。而張建陽(yáng)卻從那時(shí)查閱翻譯了很多國內外的資料,對軟件測試產(chǎn)生了濃厚的興趣。
像張建陽(yáng)這樣在工作中自己定位在軟件測試領(lǐng)域的開(kāi)發(fā)人員并不多見(jiàn),因為程序員更愿意去做開(kāi)發(fā)而不是測試,從大環(huán)境上,測試人員收入水平低也是原因之一。而在微軟,測試人員和開(kāi)發(fā)人員的工資水平是相同的。
如何改變這種現狀呢?有人說(shuō)可以可以派人去先進(jìn)的國外軟件企業(yè)學(xué)習,但這種方式因為牽涉到商業(yè)秘密,可操作性不大。陳宏剛博士認為更好的方法是引進(jìn)人才,把在國外大型軟件公司工作過(guò)、有經(jīng)驗的人才引進(jìn)來(lái),甚至要高薪聘請。他表示,這不僅僅是一個(gè)人的問(wèn)題,關(guān)鍵是能夠把整個(gè)軟件測試的水準提高一個(gè)層次。
引進(jìn)人才只是開(kāi)始,更重要的是培養一批軟件測試人才。軟件開(kāi)發(fā)的教育培訓都是比較正規的,各個(gè)學(xué)校也都設有專(zhuān)業(yè),但軟件測試還沒(méi)有正規的專(zhuān)業(yè)畢業(yè)生,而且沒(méi)有評判的標準。陳宏剛博士給很多軟件學(xué)院建議,開(kāi)設四方面的軟件測試專(zhuān)業(yè)基礎課:軟件測試基礎、軟件測試開(kāi)發(fā)、高級軟件測試案例和行業(yè)軟件特色測試方法。國內現在已經(jīng)有了一些軟件測試基礎的教材,但其他的教材還沒(méi)有。高級軟件測試案例主要是大型軟件測試案例,大型軟件出現的問(wèn)題具有很強的代表性。而行業(yè)特色軟件測試的課程可以開(kāi)闊學(xué)生的視野。陳博士介紹說(shuō),在國外,也是極少的高等院校開(kāi)設測試專(zhuān)業(yè),但可以借鑒民間的培訓機構課程。在有一批專(zhuān)業(yè)的測試人才出現之后,人們會(huì )認識到他們的重要性。
如果你已經(jīng)開(kāi)始從事軟件測試工作,千萬(wàn)不要認為軟件測試沒(méi)有什么發(fā)展的潛力和前途。劉忠從1995年接下IBM的OS2漢化版本的測試開(kāi)始到現在,他一直工作在軟件測試領(lǐng)域,并升到了公司高級副總裁的位置。和騰軟件也培養了一批測試工程師,它們從對測試職業(yè)將信將疑到明確自己的測試方面的職業(yè)目標。劉忠介紹說(shuō):“很多人開(kāi)始做測試執行工作時(shí)會(huì )說(shuō)很麻煩、很枯燥,只是一味的埋怨,而不是主動(dòng)的去學(xué)習,他沒(méi)有看到軟件測試背后所隱藏的知識。因為學(xué)習可以做這些工作,不學(xué)習也可以做這些工作,但質(zhì)量是不同的。有些人自學(xué)和請教了很多測試技術(shù)和管理方面的知識,公司自然就會(huì )在下個(gè)項目中去培養他!
因此對于一個(gè)新手,要在各方面培養自己的能力。首先是要理解各種測試流程,并在理解的基礎上轉化為自己的知識,以后遇到相似的問(wèn)題能自己去解決。在測試技能上,要知道測試有那些手段,比如壓力測試有哪些方法,哪些工具可以輔助做測試。從專(zhuān)業(yè)技能上,面向不同的技術(shù)方向,像操作系統、網(wǎng)絡(luò )、通信等都要從專(zhuān)業(yè)上深入了解。這三方面要同步去成長(cháng)。
軟件測試工程師未來(lái)的發(fā)展
從事軟件測試有沒(méi)有前途,未來(lái)的職業(yè)發(fā)展方向怎樣呢?
陳宏剛博士表示,軟件測試工程師在微軟的發(fā)展有幾種途徑:一種走技術(shù)路線(xiàn),成長(cháng)為高級軟件測試工程師,這時(shí)他能夠獨立測試很多軟件,再向上可以成為軟件測試架構設計師。第二種就是向管理方向發(fā)展,從測試工程師到組長(cháng)(Lead),再到項目經(jīng)理(Manager),到更高的職位。第三種可以換職業(yè),做項目管理,做開(kāi)發(fā)人員都可以,很多測試工具軟件開(kāi)發(fā)工程師在寫(xiě)測試軟件的過(guò)程中,因為開(kāi)發(fā)方面積累了經(jīng)驗,同時(shí)對軟件產(chǎn)品本身產(chǎn)生了自己的看法,很容易轉去做產(chǎn)品編程。
陳宏剛博士現在還帶著(zhù)一個(gè)測試小組,兩個(gè)清華軟件學(xué)院的學(xué)生,一個(gè)南開(kāi)的專(zhuān)門(mén)做軟件測試的博士生,一個(gè)北郵的學(xué)生,他們負責總部一個(gè)產(chǎn)品的測試。陳博士表示,在自己簡(jiǎn)單的講講思路,共同探討之后,他們一星期就找出了70多個(gè)Bug,也感覺(jué)學(xué)了很多知識,并表示以后專(zhuān)注于軟件測試專(zhuān)業(yè),因為他們感覺(jué)軟件測試真的是一門(mén)很深的學(xué)科,有很多可以研究的課題。其實(shí)微軟的測試人員很多也都是碩士、博士,他們同樣在做創(chuàng )造性的工作,保證著(zhù)程序質(zhì)量,推動(dòng)著(zhù)軟件的進(jìn)步。
軟件測試是正在快速發(fā)展,充滿(mǎn)挑戰的領(lǐng)域。盡管現在單機版桌面軟件的測試已經(jīng)成熟了很多,但對于網(wǎng)絡(luò )時(shí)代的到臨,包括微軟在內的公司對基于網(wǎng)絡(luò )的測試也沒(méi)有一套完整的體系,也是處于探索中,網(wǎng)絡(luò )中被攻擊的可能性太大,這就是為什么黑客在網(wǎng)絡(luò )上能興風(fēng)作浪的原因。網(wǎng)絡(luò )測試是一個(gè)新環(huán)境,而且是很大的挑戰。
軟件測試未來(lái)的發(fā)展空間很大,軟件測試工程師的職業(yè)之路同樣充滿(mǎn)希望。
文章來(lái)源于領(lǐng)測軟件測試網(wǎng) http://kjueaiud.com/