軟件測試作為軟件工程的重要組成部分,它貫穿于整個(gè)軟件開發(fā)生命周期,是軟件質(zhì)量保證的關(guān)鍵手段。中培偉業(yè)《軟件自動(dòng)化測試與持續(xù)集成》培訓(xùn)專家劉老師指出,隨著軟件產(chǎn)業(yè)高速發(fā)展,從事軟件測試的技術(shù)人員也愈來愈多。軟件測試工程師工作環(huán)境、自身能力和價(jià)值創(chuàng)造等方面的提升,對(duì)企業(yè)軟件開發(fā)組織和個(gè)人成長之路都有重要意義。在通往軟件測試的成長之路上,涉及測試能力培養(yǎng)、測試心理調(diào)適、測試與開發(fā)團(tuán)隊(duì)間的協(xié)作溝通等內(nèi)容。一個(gè)測試新人如何通過組織培養(yǎng)和自身努力,逐步成長為中高級(jí)測試工程師或測試管理者,是需要邁過很多關(guān)口的。
劉老師指出,軟件測試工程師的成長之路上“過五關(guān)”。包括“心理關(guān)”、“業(yè)務(wù)關(guān)”、“技術(shù)關(guān)”、“專業(yè)關(guān)”和管理關(guān)。
一)心理關(guān)
在當(dāng)前的軟件行業(yè)中,由于軟件公司規(guī)模大小不同,對(duì)軟件研發(fā)的投入和重視程度也不相同,有部分中小公司對(duì)質(zhì)量的概念薄弱,以致于軟件測試也常常被忽略或不受重視。行業(yè)內(nèi)還有不少老古董開發(fā)人員對(duì)測試有偏見和誤解,認(rèn)為只有不會(huì)編程或技術(shù)弱的才去做測試。
剛從事軟件測試工作的人員如果一開始就進(jìn)入了一個(gè)中小型公司,在開始時(shí),常常心理上不適應(yīng)。這種不適感來自于自身技術(shù)薄弱、公司沒正式的測試部門、開發(fā)流程不規(guī)范以及公司領(lǐng)導(dǎo)對(duì)測試的不重視等多種因素。很多軟件測試人員從心理上占了弱勢,就自覺地把自己當(dāng)成開發(fā)人員的下級(jí)去溝通,長此以往,在整個(gè)開發(fā)工作中就很被動(dòng),總被開發(fā)人員支配,被開發(fā)牽著鼻子走。
如果遇到這種情況,我們除了在心理上接受并忍耐著配合完成工作,但也應(yīng)該努力提高自己的工作質(zhì)量和效率,提出更多有建設(shè)性的意見幫助開發(fā)團(tuán)隊(duì)一起改進(jìn),去贏得開發(fā)團(tuán)隊(duì)的尊重和重視,不能總是這么被動(dòng)地順從不合理流程。
實(shí)際上開發(fā)和測試是軟件工程中并行的兩條線,同等重要,所以我們在工作中心態(tài)要平和,要自己對(duì)自己有信心。
二)業(yè)務(wù)關(guān)
在軟件測試中,功能測試是最基礎(chǔ)也是最重要的,要做好功能測試,就必須對(duì)被測系統(tǒng)要實(shí)現(xiàn)的業(yè)務(wù)功能非常熟悉。掌握被測軟件系統(tǒng)所涉及的業(yè)務(wù)知識(shí)對(duì)每個(gè)測試人員都很重要。快速學(xué)習(xí)并掌握各種流程及業(yè)務(wù)知識(shí)才能設(shè)計(jì)出具有深度和廣度的測試用例,并高效地執(zhí)行測試,這是測試人員必須有的基本功,測試人員必須過“業(yè)務(wù)關(guān)”。
一個(gè)測 試工程師長期從事某一個(gè)行業(yè)領(lǐng)域的測試工作,他通過“業(yè)務(wù)關(guān)”的有效途徑是先學(xué)習(xí)和掌握“行業(yè)通用業(yè)務(wù)知識(shí)”。例如:銀行核心業(yè)務(wù)系統(tǒng)、電信計(jì)費(fèi)系統(tǒng)、稅收征收系統(tǒng)、財(cái)務(wù)軟件等我們都分別把它們叫做對(duì)應(yīng)的某個(gè)行業(yè)。
三)技術(shù)關(guān)
強(qiáng)調(diào)精通業(yè)務(wù)知識(shí)不等于不用掌握技術(shù)。事實(shí)上,測試是一個(gè)技術(shù)性很強(qiáng)的工作。與開發(fā)工程師相比,測試工程師需要掌握的技術(shù)范疇要廣闊得多,只是在技術(shù)深度方面有所不同。
無論開發(fā)還是測試工程師,我們都不可能精通每一項(xiàng)技術(shù),但常用的我們要熟悉,至少能精通一兩種。在實(shí)際測試工作中多培養(yǎng)解決技術(shù)問題的能力,遇到什么問題時(shí)再加強(qiáng)相關(guān)知識(shí)的學(xué)習(xí),也就是什么不懂就拿起來學(xué)。多去開展一些技術(shù)攻關(guān)活動(dòng),這樣做的事多了,技術(shù)能力自然就會(huì)大大提高,這也是過技術(shù)關(guān)的關(guān)鍵所在。
四)專業(yè)關(guān)
對(duì)于測試工程師來講,前面的過“心理關(guān)”、“業(yè)務(wù)關(guān)”、“技術(shù)關(guān)”都是為過“專業(yè)關(guān)”打下基礎(chǔ)。測試質(zhì)量如何才是我們真正的能力體現(xiàn)。
五)管理關(guān)
我們在這里只談作為一個(gè)測試工程師的管理關(guān)。很多測試人員認(rèn)為自己只是個(gè)小小測試員,管理的事跟自己不相關(guān)。其實(shí)管理不是經(jīng)理們的專利,測試工程師也需具備某些管理能力。測試工程師的管理能力主要體現(xiàn)在兩個(gè)方面:團(tuán)隊(duì)協(xié)作和個(gè)人管理。軟件測試工作的特點(diǎn)包括受支配的、被動(dòng)的、涉及面很廣,需要和不同部門的其它團(tuán)隊(duì)成員打交道。這些特點(diǎn)要求測試工程師應(yīng)具備較強(qiáng)的團(tuán)隊(duì)協(xié)作精神,測試工程師要更積極主動(dòng)地開展工作,做好溝通和協(xié)調(diào)工作。
總之測試工程師的管理關(guān)是一個(gè)長期自我修練的過程。通過自我修煉形成:有責(zé)任心、主動(dòng)積極進(jìn)取的工作態(tài)度、耐心、細(xì)致、規(guī)范、溝通、計(jì)劃、總結(jié)、改進(jìn)等。