假如你已經(jīng)決定要在項目中引入自動化測試温艇,在正式開展之前需要分析清楚,你的項目堕汞、你的團隊真的適合做自動化測試嗎勺爱?雖然恰當(dāng)引入自動化測試能給產(chǎn)品質(zhì)量帶來非常大的助力,但并不是所有類型的產(chǎn)品或團隊都一定適合開展自動化測試讯检。
對于公司項目而言邻寿,如果產(chǎn)品三天一小改蝎土、半月一大改,可能自動化測試腳本剛起步绣否,產(chǎn)品就已經(jīng)改動了誊涯。對于這類項目來說,引入自動化測試顯然是不合適的蒜撮。既然并不是所有項目或者團隊都一定適合做自動化測試暴构,那么決定要不要做自動化測試的因素有哪些呢?其中時間是一個比重較大的因素段磨。
假如一個項目從立項到結(jié)束只有一個月的時間取逾,而這一個月的時間中相當(dāng)長的時間都要用來看需求文檔、改需求文檔苹支、編寫測試用例等砾隅,真正留給測試的時間并不多。這個時候如果強行做自動化測試债蜜,可能用例設(shè)計還沒有完成晴埂,項目就結(jié)束了。這種情況寻定,手工測試絕對是第一選擇儒洛。
但是,一旦項目穩(wěn)定下來狼速,就要考慮接入自動化測試琅锻。因為這個時候項目比較穩(wěn)定,做自動化測試就可以參照手工用例去做了向胡。除了時間恼蓬,還需要考慮成本和效率。自動化測試之所以能在很多大公司實施運作起來僵芹,根本在于項目的適宜性和有較高的投資回報率滚秩。
雖然行業(yè)中沒有嚴(yán)格的標(biāo)準(zhǔn),但在具體實施自動化測試之前淮捆,首先要做的是結(jié)合當(dāng)前團隊的現(xiàn)狀和研發(fā)質(zhì)量存在的痛點,對軟件開發(fā)過程進行分析本股,觀察其是否適合引入自動化測試攀痊,可以從以下幾個方面進行權(quán)衡。
1) 項目變動少
測試腳本的穩(wěn)定性決定了自動化測試的維護成本拄显。如果項目需求變動過于頻繁苟径,測試人員需要根據(jù)變動的需求來更新測試用例及相關(guān)的測試腳本,而腳本的維護本身就是一個代碼開發(fā)的過程躬审,需要修改棘街、調(diào)試蟆盐,必要的時候還要修改自動化測試的框架,如果所花費的成本不低于利用其節(jié)省的測試成本遭殉,那么自動化測試便是失敗的石挂。
如果項目中的某些模塊相對穩(wěn)定,而某些模塊需求變動性很大险污,我們便可對相對穩(wěn)定的模塊進行自動化測試痹愚,而變動較大的模塊仍用手工測試。
2) 項目周期足夠長
自動化測試從需求范圍的確定蛔糯,到自動化測試框架的設(shè)計拯腮,以及測試腳本的編寫與調(diào)試,均需要相當(dāng)長的時間來完成蚁飒。這樣的過程本身就是一個測試軟件的開發(fā)過程动壤,如果項目的周期比較短,沒有足夠的時間支持這樣一個過程淮逻,那么自動化測試便是笑談琼懊。
3) 項目資源足夠
當(dāng)自動化要求越來越多的時候,自動化不是一個人完成的弦蹂,需要一幫人長期維護才能更好地發(fā)揮自動化測試的價值肩碟。所以還需要考慮當(dāng)前團隊的人力、物力(基礎(chǔ)設(shè)施)是否能足夠支撐凸椿。
4) 產(chǎn)品型項目
對于產(chǎn)品型的項目削祈,每個項目只改進少量的功能,但每個項目必須反反復(fù)復(fù)測試那些沒有改動過的功能脑漫,這部分測試完全可以讓自動化測試來承擔(dān)髓抑,同時可以把新加入功能的測試也慢慢地加入自動化測試中。
5) 能夠自動編譯优幸、自動發(fā)布的系統(tǒng)
要完全實現(xiàn)自動化測試吨拍,必須具有能夠自動化編譯、自動化發(fā)布系統(tǒng)進行測試的功能网杆。 當(dāng)然不能達到這個要求也可以在手工干預(yù)的情況下進行自動化測試羹饰。
6) 回歸測試
當(dāng)存在大量的回歸用例需要驗證,并且占用了大量的人力時間時碳却,可以考慮將此部分回歸測試轉(zhuǎn)換成相應(yīng)自動化測試队秩。回歸測試是自動化測試的強項昼浦,它能夠很好地驗證你是否引入了新的缺陷馍资,老的缺陷是否修改過來了。
7) 多次重復(fù)关噪、機械性動作
將煩瑣的任務(wù)轉(zhuǎn)化為自動化測試鸟蟹。自動化測試最適用于多次重復(fù)乌妙、機械性動作,這樣的測試對它來說從不會失敗建钥。
8) 需要頻繁運行測試
如果在一個項目中需要頻繁地進行測試藤韵,測試周期按天算,就能最大限度地利用測試腳本锦针。
這里給大家準(zhǔn)備了我從大學(xué)到大廠工作的軟件測試資料荠察,無償分享給大家,需要的可以點擊自取