自動化測試系統(tǒng)該如何去開展
很多時候測試人員在開展自動化測試的時候都是不加思考的就開始做,認為用工具錄幾個腳本再回放就可以了,沒有考慮有效性;而做了并不一定就會有效果,如果自動化測試在整個測試工作中發(fā)揮不了作用,那么哪怕是只投入了很少的成本也是在浪費資源。所以在開展自動化測試之前必須認真思考慮一些問題,以確保它的有效性:
1、被測系統(tǒng)是否適合做自動化測試;
2、被測系統(tǒng)適合在哪些環(huán)節(jié)做自動化測試;
3、使用何種測試工具、測試框架;
4、開展自動化測試需要哪些資源,包括:人員、機器、時間;
5、當前可用或是可以申請到的資源;
6、如何在不影響日常測試工作的前提下,開展自動化測試工作;
1、被測系統(tǒng)是否適合做自動化測試;很多人可能都回覺得這個問題有些多余,不需要考慮。可事實上作為一名測試主管必須考慮這個問題,應(yīng)為自動化測試并非只是做與不做這么簡單,而是需要考慮成本投入與效果產(chǎn)出。不管是做軟件、做系統(tǒng)、還是做,zui終的目的基本上都是要盈利的,要盈利就必須控制成本,提*。所以在測試工作中也必須考慮到成本投入。如何確定系統(tǒng)是否適合做自動化測試呢?個人認為主要考慮當前的被測項目是長期的還是短期?如果被測項目是在今后半年或者幾年間要不斷進行開發(fā)維護的,那么就需要重復的進行大量的回歸測試,這種情況下如果有自動化的回歸測試體系就可以節(jié)省成本投入;如果被測項目是短期的,比如說一個月,或幾個月,同時如果開發(fā)自動化測試又不是很容易,也沒有足夠的時間去做這件事,那么就*沒有必要作自動化測試,費盡力氣做出的自動化測試腳本,可能只會用到一次或兩次,這樣就很不值當。
2、被測系統(tǒng)適合怎樣的自動化測試;
自動化測試覆蓋的范圍很廣:單元測試、集成測試、接口測試,GUI測試等等都可以實現(xiàn)自動化執(zhí)行;同時,不同的系統(tǒng)情況是不一樣,有的適合或是可以做GUI的自動化測試,有的可能只適合做接口的自動化測試,所以需要針對不同的被測項目,考慮具體在哪一個環(huán)節(jié)作自動化測試。比如說針對搜索引擎,前端往往比較簡單,只是一個文本框和提交按鈕,大部分的邏輯處理都是在后端完成的,這種情況做自動化的接口測試就可以達到事半功倍的效果;如果是被測系統(tǒng)有很多的頁面操作,那么可以考慮GUI的自動化測試;以上這兩種情況都不是的,如果測試資源足夠,那么在各個環(huán)節(jié)都是可以開展自動化測試的。此外,還有一點需要考慮的是自動化測試的可行性,比如說對一個系統(tǒng)而言,做GUI測試是zui合適的,也是zui有效,但是有可能通過各種工具或者是腳本很難實現(xiàn)GUI的自動化測試,那么就需要考慮變通,考慮是否可以將自動化測試調(diào)整到接口測試或是集成測試等環(huán)節(jié)。