對于一個企業(yè)用戶來說,什么樣的軟件測試自動化方案將是他們所需要的呢?

      根據(jù)筆者和不同企業(yè)用戶的溝通和交流,他們的軟件測試自動化需求往往更多的集中在:自動化軟件測試管理流程,以達(dá)到始終一致的軟件質(zhì)量和可量化的,可衡量的測試過程管理;通過實(shí)現(xiàn)測試自動化,以提高測試案例的復(fù)用和實(shí)現(xiàn)內(nèi)部標(biāo)準(zhǔn)化,從而提高測試效率。

 

      但同時,企業(yè)用戶也將綜合考慮測試自動化給當(dāng)前的企業(yè)部門與部門間的合作以及現(xiàn)有的工作流程所帶來的沖擊,在軟件測試自動化過程中也往往選擇“進(jìn)化”方式,而不是“革命”的方式。

      企業(yè)在實(shí)現(xiàn)測試自動化過程中,一個有趣的現(xiàn)象是絕大多數(shù)的中國企業(yè)用戶會選擇在企業(yè)內(nèi)部實(shí)現(xiàn)測試自動化,他們希望參與這個自動化的過程,并且更加在乎自己來建立并管理這個自動化流程;他們不于通過軟件測試自動化來滿足上述需求,而且希望通過自動化過程的實(shí)施達(dá)到學(xué)習(xí)和提高團(tuán)隊(duì)測試技能的目的。

     與此相比,不在少數(shù)的歐美企業(yè)用戶他們可能會選擇測試自動化平臺托管服務(wù),或者外包,離岸和派遣等多種方式相結(jié)合來實(shí)現(xiàn),對他們來說,更加注重的是軟件測試自動化所帶來的結(jié)果,而非自動化過程本身。

     軟件測試自動化的方案選型

     在我們已經(jīng)了解到的大多數(shù)的企業(yè)用戶對軟件測試自動化的需求之后,再來看看他們又是如何對軟件測試自動化的方案進(jìn)行選型的:


      選擇盡可能少的自動化產(chǎn)品覆蓋盡可能多的平臺,以降低產(chǎn)品投資和團(tuán)隊(duì)的學(xué)習(xí)成本。

      測試流程管理自動化通常被優(yōu)先考慮,以滿足為企業(yè)測試團(tuán)隊(duì)提供流程管理支持的需求。

       在投資有限的情況下,性能測試自動化產(chǎn)品將優(yōu)先于功能測試自動化被考慮。

       在考慮產(chǎn)品性價比的同時,產(chǎn)品的支持服務(wù)和售后服務(wù)的完善性也備受關(guān)注。

       趨向于選擇主流產(chǎn)品,以便于通過行業(yè)間交流甚至網(wǎng)絡(luò)等方式獲得更為廣泛的經(jīng)驗(yàn)和支持。

       對測試自動化方案的可擴(kuò)展性提出要求,以滿足企業(yè)不斷發(fā)展的技術(shù)和業(yè)務(wù)需求。

       由于不同客戶在組織架構(gòu),員工素質(zhì)以及流程管理水平等方面的不同,我們很難用一個實(shí)例來說明它的普遍適用性。 


      然而大多數(shù)客戶完全獨(dú)立于廠商,獨(dú)立于技術(shù)的軟件測試自動化的需求和希望通過軟件測試自動化來達(dá)到的目的卻往往是具有共性的,而這種共性所提供給其它企業(yè)客戶的借鑒不是他們采用了那個平臺,利用了何種技術(shù),而是實(shí)現(xiàn)軟件測試自動化的過程本身,以及在這個過程中所體現(xiàn)的具有普遍適應(yīng)性的軟件質(zhì)量管理和軟件測試的佳實(shí)踐。

      測試自動化不是拍腦袋的事


      既然我們談到了軟件質(zhì)量管理和軟件測試佳實(shí)踐,很顯然這些佳實(shí)踐本身并不依附于軟件測試自動化的,它更多是來自于比如ITIL(IT Infrastructure Library)框架,或來自于一些標(biāo)準(zhǔn)化,如CMM/CMMi中的關(guān)于SQA的KPA(Key Performance Area)。所以,我們說軟件測試自動化是一個必然趨勢,但對企業(yè)來說,它并不意味著是必須馬上啟動的項(xiàng)目,或者甚至所有企業(yè)都必須跟隨的道路。


       首先,一個企業(yè)實(shí)施測試自動化,不是拍腦袋說干能干好的,它不僅涉及測試工作本身流程上、組織結(jié)構(gòu)上的調(diào)整與改進(jìn),甚至也包括需求、設(shè)計(jì)、開發(fā)、維護(hù)及配置管理等其他方面的配合。


        如果對這些必要的因素沒有考慮周全,必然在實(shí)施過程中會處處碰壁,既定的實(shí)施方案也無法開展。


         其次,盡管自動化測試可以降低人工測試的工作量,但并不能完全取代手工測試。的自動化測試只是一個理想目標(biāo),根據(jù)筆者的經(jīng)驗(yàn)即便一些如SAP, Oracle ERP等測試庫規(guī)劃十分完善的套件,其測試自動化率也不會超過70%。所以一味追求測試自動化只會給企業(yè)帶來運(yùn)作成本的急劇上升。

        再次,比較測試自動化需要企業(yè)有相對規(guī)模的投入,對企業(yè)運(yùn)作來說,投入回報率將是決定是否實(shí)施軟件測試自動化的終指揮棒,筆者建議企業(yè)在決定實(shí)施軟件測試自動化之前,必須要求量化的投資回報分析。


        此外,軟件測試自動化并不是采購強(qiáng)大的自動化軟件測試工具或自動化管理平臺,畢竟軟件質(zhì)量的保證不是依靠產(chǎn)品或技術(shù),而且更多的因素在與高素質(zhì)的人員和合理有效的流程。