1. 程式人生 > >自動化測試之準備篇

自動化測試之準備篇

很多公司都在想進行自動化測試,特別是在看到很多公司的測試人員招聘時,會寫上熟悉自動化測試,熟悉java、Python、ruby,熟悉Linux系統操作等等。但是其實真正招到的人還是進行手工測試,無非也就偶爾跑跑loadrunner。其實在大多數國內企業沒有環境去靜下心來進行自動化測試。其實大多數企業都希望快速交付,快速響應,寄希望於自動化測試來提高測試效率,縮短測試時間。但是這是需要在建立起一套高效的自動化測試框架之下,而建立這套框架絕不是幾個月能完成的,而且在多年的執行中需要不斷優化完善,才能達到最佳效果。我想國內企業願意花如此代價來開發一套這樣的自動化測試框架應該少之又少。但是大體量級(如BAT)的企業最終採用自動化測試也是必然的。當你的手工測試用例達到幾千甚至上萬,而且系統持續不斷更新,釋出時間要求越來越快的時候,當你想一晚上執行完上千條測試用例的時候,而你又有足夠的資金去養一群看似沒有帶來直接經濟效益,而又工資很高的測試開發工程師的時候,就可以開始自動化測試準備了。
1、人員準備。當然是招聘一群自動化測試工程師,或者叫測試開發工程師。這些人一般都是從事過開發工作,精通或者熟悉多門開發語言、指令碼語言。還有一些是從傳統手工測試過渡到自動化測試,測試本身的東西當然自然精通了。
2、技術準備。無非就是選擇用什麼基礎框架了,selenium、watir或者robot。最常用的應該是selenium,而且他支援多個語言,java、Python、ruby、C#,這也是我比較推薦的。如果選擇selenium當然就要選擇用什麼語言了,本人比較喜歡用指令碼語言,如ruby,語法簡單,java幾句話完成的,它用一句就搞定了。自動化測試就是為了提高效率,沒必要選擇那麼複雜的。達到同樣的效果,過程越簡單越好。
3、環境配置。程式碼管理,可以用git,不用單獨準備伺服器。若干臺測試執行機,和若干臺測試伺服器。執行機和伺服器必須分別處於不同的物理伺服器。執行機伺服器可以劃分多個虛擬機器,同樣的伺服器也可以劃分多個虛擬機器。因為同時上千個指令碼快速請求一臺伺服器,很可能因為環境問題而failed。而我們做功能自動化,本身是考慮功能的正確性,不去考慮效能問題。所以測試的環境儘量排除其他干擾,確保指令碼順利執行,以檢測出功能上的問題。因此網路環境上,執行機與測試伺服器要在一個獨立的區域網中。同時還得要一臺控制機去控制測試伺服器的產品部署,和執行機的執行任務,以及對執行結果的彙總報告。