為什麼要使用開源測試載入器?
作為一個開源測試載入器的推崇者,我經常被問到這個問題。許多測試工程師對商業測試載入器情有獨鐘,總覺得商業測試載入器既好用又強大,而開源測試載入器功
能弱,缺陷多,而且不好用。對開源測試載入器的偏見一方面來自於商業測試載入器的宣傳,另一方面,也來自部分測試工程師在使用開源測試載入器過程中的心態。
在本人所在的組織中,公司內使用的絕大多數測試載入器或多或少都有開源測試載入器的影子,從開源測試載入器在主要組織的應用中看來,使用開
源測試載入器帶來的優勢非常明顯:
- 極低的License費用:這個是顯而易見的一個優點。設想,如果公司需要對Web應用進行上萬並發的效能測試,使用LoadRunner等商業
測試載入器的費用絕對不是一個小數字;
- 更高的整合度:大多數商業測試載入器本身也號稱提供了自己的“完整解決方案”,但商業測試載入器往往只能覆蓋測試中一部分的領域,對於整合測試或是針
對應用的介面測試方面,商業測試載入器很難提供企業需要的好的解決方案。這樣一來,這部分企業自己建立的自動化測試載入器就很難被整合到商業測試載入器形成的
“測試架構”中。而採用開源測試載入器解決方案的話,這個問題根本就不是問題;
- 更適合企業需要:出於商業利益的考慮,商業測試載入器總是試圖覆蓋“最大的使用者群體”,因此商業測試載入器往往是那種“誰都可以用”,但“在哪裡都不
是特別好用”的那一類工具,反之,開源測試載入器在這方面具有顯然的優勢;
- 更適合提高企業的測試技術水平:許多開源測試載入器中都體現和非常值得學習的測試思想和方法,由於開源本身的特性,這些思想和方法是非常容易通過對
開源測試載入器的研究來進行學習和掌握的。
以JMeter這個工具為例,我在許多場合下向測試工程師推薦這個效能測試工具,的確也有一些測試工程師嘗試了這個工具,但從他們那裡,我得到的反
饋往往是:“為什麼這個工具的介面這麼難看?”,“為什麼這個工具沒有xx功能(與商業測試載入器相比)?”,“為什麼這個工具沒有漂亮的文檔?”。許多人
在第一印象上便認為,這個工具比不上商業測試載入器,然後就棄之如敝屐。實際上真是這樣嗎?我所在的組織的效能測試幾乎完全依賴於JMeter,通過在
JMeter上擴充的圖表功能,支援叢集等功能,通過少量的代碼,JMeter可以產生比商業測試載入器更加漂亮,更加有價值的圖表,而且,更重要的
是,100%適合我們自己的環境需要。
當然,除了看到開源測試載入器的優點,我們也應該看到開源測試載入器的不便之處。與商業測試載入器相比,開源測試載入器在產品的使用者互動性,易用性,易學習
性方面顯然
不是那麼好(當然,在我看來,這方面不是測試載入器的重點)。因此,要在組織中使用和引入開源測試載入器的話,對組織中的成員,組織環境是有一定的要求的。
就本人的經驗而言,許多目前的開源測試載入器,例如Mantis、Testlink、JMeter、Selenium/Webdriver、
xUnit等都已經是非常成熟的測試載入器,擁有了大量的使用者,也有許多成功的應用執行個體,本人的實踐已經充分證明了這些工具在實際工作中能夠帶來的收益:
即使只是簡單的使用開源測試載入器去完成某個特定的任務,或是用來搭建公司內部的測試管理平台,也能從這些工具中受益不少;更何況開源測試載入器擁有眾多的開
發者,處於不斷的完善和提高中,具有良好的擴充性,給你充分修改和改造的自由,從這個角度來說,如果你擁有足夠的資源,想要打造屬於自己的測試平台,開源
測試載入器絕對是一個好的平台。