4常見問題
您的位置:
首頁 ->
常見問題 -> 自動化能滿足我們什么
自動化能滿足我們什么
自動化能做什么事情原本是個很古老的命題,基本所有人都知道,而且也有很多人對這一點進行過論述和論證。所以這里不再多說,只為討論問題的完整性簡單進行闡述,以便讀者在閱讀和思考或討論的時候能更好的上下文銜接。
(1)提高測試執(zhí)行的速度
毫無疑問,無論使用什么工具,自動化測試執(zhí)行是使用機器部分代替人工執(zhí)行的方式,10人日的測試執(zhí)行工作量可以由5個人花2天也可以2個人花5天完成。自動化如果實現(xiàn)了80%,那么使用2個人1天可以完成剩下的20%手工測試;用一臺PC Server組裝10套虛擬系統(tǒng),10套虛擬系統(tǒng)0.8甚至0.5天就可以完成所有這些自動化的測試執(zhí)行。不考慮自動化開發(fā)的投入,還是2個人,1天就能完成所有的測試執(zhí)行,所以說自動化測試提升執(zhí)行速度真正的意思是使用同等的執(zhí)行人力可以結(jié)合自動化在最短時間內(nèi)完成測試執(zhí)行,而并非說自動化的操作速度比人工快。
(2)避免機械式重復(fù)工作
雖然測試有像正交覆蓋這樣被證明了是科學(xué)的裁剪方法,但是一方面這些裁剪方法并不是所有的地方都能使用,再者即便都能用測試執(zhí)行的工作量還是非常大的。無論是多有耐心的測試人員,在長期的測試執(zhí)行中也會感覺疲憊和乏味,當然有些自制力比較強的同事還是能堅持下來的。自動化測試的好處就在于能替代人去做一些反反復(fù)復(fù)的工作,可以不眠不休不厭倦;這樣可以解放出一部分測試執(zhí)行人員,讓他們向更需要他們的地方成長、發(fā)揮。
特別是對于像我們這樣做運營測試的同事來說,可能會有幾年只負責測試某一個或幾個系統(tǒng)的補丁需求的情況。自動化讓大家可以騰出手來做更多的分析工作,一定程度上也能通過提高測試分析設(shè)計的投入來提升測試的質(zhì)量;同時也能讓測試人員減少一些乏味的感覺,日新月異的自動化技術(shù)和不斷產(chǎn)生的問題與系統(tǒng)測試結(jié)合也讓大家更有解決問題的欲望,在繁瑣的測試工作中更容易收獲一些樂趣和成就感。
(3)避免手工易犯的錯誤
雖然測試人員普遍比較耐心細致,但是偶爾的錯漏總是難免的,筆者參照自己平時的工作總結(jié)了了一下,對于筆者來說主要有以下幾種導(dǎo)致錯誤的因素:
1、正確率總會有極限,就是說測試執(zhí)行的時候可以細心一萬次,也總會有那么幾次是不小心就忘了一些什么東西,導(dǎo)致測試結(jié)果偏差;
2、注意力被其他事物所分散,尤其在并行任務(wù)較多的時候很容易發(fā)生考慮不周全或者忽視了一些比較隱蔽的問題;
3、不夠耐心細致,上節(jié)說到反反復(fù)復(fù)的測試,或者受心情影響,使得測試人員產(chǎn)生懈怠的狀況,這樣測試出來的結(jié)果很難保證就是沒有問題的;
4、思維定勢,長期的工作習(xí)慣和對某些系統(tǒng)較為熟悉的時候容易產(chǎn)生問題,按照自己的經(jīng)驗去判定一個測試結(jié)果的正確性;而實際上一些隱藏的問題在這種情況下較容易被忽視。
當然,手工容易發(fā)生錯誤的情況肯定不止筆者說的這幾種情況,大家可以自己參照一下自己平時的經(jīng)驗,看看都會遇到一些什么樣的場景。這些列舉的問題如果出現(xiàn)在測試分析和設(shè)計的時候自動化是很難替我們避免的,即使有嚴格的評審機制也不能保證就可以完全避免,所以這里主要是指測試執(zhí)行的時候。
(4)自動化最根本的目標
上文分別說了自動化的三個最為明顯的好處,還有一些其他的好處我們就不繼續(xù)討論了。雖然自動化測試有這么多好處,但是我們自己到底需要自動化做什么呢?其實還是經(jīng)典的三個要素:成本、時間、質(zhì)量;質(zhì)量不用多說大家也理解,就是避免一些人工容易犯的錯誤。至于時間,因為執(zhí)行速度可以得到提高,所以某些測試的周期可以得到控制,比較成功的實踐甚至可以大幅縮短測試周期。而成本,這里很籠統(tǒng)的說“成本”二字而并非人力成本或者時間成本,因為好多人把自動化的這點作用理解為節(jié)省人力、節(jié)省時間,對于測試來說,成本不僅僅是測試人力和測試時間這兩點。如果把測試與項目與部門、公司的整體利益孤立開來或許可以這么說,但是測試并不能隨意與這些因素割離,因為聯(lián)系是普遍的。