聽(tīng)完這些,原本困惑的我又多了份驚訝,一方面驚嘆產(chǎn)述的這些狀況與我之前的自動(dòng)化測(cè)試的試行失敗是相近的。另一方面又猜疑這自動(dòng)化測(cè)試該不會(huì)像共產(chǎn)主義社會(huì)那般吧!隨著培訓(xùn)內(nèi)容的展開(kāi),我終于解開(kāi)了困惑,何為理性的看待自動(dòng)化測(cè)試。

  “如同不能指望原始社會(huì)擁有了汽車(chē)能進(jìn)入現(xiàn)代社會(huì)一樣,自動(dòng)化測(cè)試工具永遠(yuǎn)都不能主導(dǎo)測(cè)試實(shí)現(xiàn)自動(dòng)化”(出自國(guó)信培訓(xùn)文檔)。我們錯(cuò)誤的把自動(dòng)化測(cè)試看成了一種測(cè)試工具或測(cè)試手段。自動(dòng)化測(cè)試是一種理念,它要發(fā)揮它真正的作用需要這種理念轉(zhuǎn)變?yōu)橐环N體系??自動(dòng)化測(cè)試體系。

  “引入自動(dòng)化測(cè)試的前提是已經(jīng)建立了合適的自動(dòng)化測(cè)試體系,如果沒(méi)有這些,而片面的追求自動(dòng)化,無(wú)異于緣木求魚(yú)。自動(dòng)化測(cè)試體系是指能夠適用某種環(huán)境的測(cè)試工具、過(guò)程、人員結(jié)構(gòu)、方法的綜合,運(yùn)用于整個(gè)項(xiàng)目團(tuán)隊(duì)” ;氐轿抑暗膶(duì)QTP研究失敗的原因,首先我開(kāi)始覺(jué)得因?yàn)檠邪l(fā)的設(shè)計(jì)、編碼實(shí)現(xiàn)并沒(méi)有考慮到自動(dòng)化,而導(dǎo)致自動(dòng)化腳本的編寫(xiě)非常吃力。比如產(chǎn)品頁(yè)面項(xiàng)目的命名不規(guī)范,導(dǎo)致自動(dòng)化測(cè)試工具很難捕捉這些頁(yè)面對(duì)像。其次是測(cè)試腳本的方向迷失,我在研究QTP的時(shí)候發(fā)現(xiàn)了這個(gè)問(wèn)題。隨著我一點(diǎn)點(diǎn)的在編寫(xiě)著腳本,我不斷的發(fā)現(xiàn)自己在的測(cè)試腳本的編寫(xiě)方向上出現(xiàn)了迷失。這段腳本我編寫(xiě)的目標(biāo)本來(lái)是功能測(cè)試,但隨著我的補(bǔ)充卻接近于開(kāi)發(fā)級(jí)的單元測(cè)試。而另一段本屬于功能性測(cè)試的腳本,因?yàn)楣δ艿闹攸c(diǎn)需要,我又補(bǔ)充了部分腳本導(dǎo)致整個(gè)測(cè)試腳本測(cè)試目標(biāo)變成了完整關(guān)聯(lián)性測(cè)試。而做為單元測(cè)試的腳本卻并沒(méi)有在開(kāi)發(fā)的角度上來(lái)設(shè)計(jì),根本做不到函數(shù)、類等代碼級(jí)的測(cè)試,根本不能達(dá)到要求。做為完整性測(cè)試的腳本也無(wú)法模擬接口功能中幾何倍數(shù)級(jí)的各種條件輸入對(duì)應(yīng)的輸出測(cè)試。而功能測(cè)試腳本算是碩果僅存,但隨著開(kāi)發(fā)對(duì)產(chǎn)品的代碼大規(guī)模調(diào)整(這些調(diào)整當(dāng)然不會(huì)考慮對(duì)已經(jīng)實(shí)現(xiàn)的腳本的影響)而直接“報(bào)廢”。如果需要腳本繼續(xù)工作,那么要花時(shí)間來(lái)修改調(diào)整它。這些腳本的結(jié)局又再一次可想而知了。

  所以首先我們要理性的看待自動(dòng)化測(cè)試,不要片面的去追求它。對(duì)不同的項(xiàng)目要開(kāi)展不同自動(dòng)化策略。參考如下

 。1) 評(píng)審項(xiàng)目中特定的部分作為應(yīng)用自動(dòng)化的候選對(duì)像。

  (2) 從項(xiàng)目中高度冗余的任務(wù)或場(chǎng)景重點(diǎn)考慮自動(dòng)化。

 。3) 將乏味且人工容易出錯(cuò)的工作重點(diǎn)考慮自動(dòng)化。

  (4) 將回歸測(cè)試經(jīng)常需要“照顧”到的部分重點(diǎn)考慮自動(dòng)化。

 。5) 自動(dòng)化開(kāi)始時(shí)要首先關(guān)注開(kāi)發(fā)成熟、理解透徹、相對(duì)穩(wěn)定的且不易變的部分優(yōu)先考慮自動(dòng)化

  其次,自動(dòng)化所實(shí)現(xiàn)的大價(jià)值目標(biāo)是可不間斷的、可重復(fù)的自動(dòng)執(zhí)行對(duì)需求、設(shè)計(jì)、代碼全面覆蓋的大量測(cè)試用例從而預(yù)防bug的產(chǎn)生的一套質(zhì)量保障機(jī)制。所以自動(dòng)化測(cè)試的重點(diǎn)在于測(cè)試自動(dòng)化作為一個(gè)體系,要運(yùn)用于整個(gè)項(xiàng)目團(tuán)隊(duì)。項(xiàng)目組要討論它(策略、時(shí)間、成本等)、研發(fā)需要參與它(編碼方向、自動(dòng)化支撐、以及代碼單元測(cè)試自動(dòng)化的計(jì)劃和執(zhí)行等)、測(cè)試要引導(dǎo)及推進(jìn)它(策略、方法、執(zhí)行、跟進(jìn)、維護(hù)等),各團(tuán)隊(duì)共同形成體系,才能讓自動(dòng)化測(cè)試工具真正的成為一種質(zhì)量保證的有力武器。