Java接口自動化測試框架系列(一)自動化測試框架

一、什麼是自動化測試

自動化測試是把以人為驅動的測試行為轉化為機器執行的一種過程。

通常,在設計了測試用例並通過評審之後,由測試人員根據測試用例一步步執行測試,得到實際結果與期望結果的比較。

為了節省人力、時間等資源,提高測試效率,便引入了自動化測試的概念。

二、自動化測試的缺點

很多人認為會使用接口測試工具就是會接口測試。其實接口測試遠遠不止是工具的使用,Jmeter也好,Postman也好,這些工具都是我們在進行接口測試過程中能夠更方便的進行測試,而工具僅僅是工具,真正核心部分還是接口測試用例設計以及測試思維。

(1)自動化測試不能取代手工測試

(2)手工測試比自動化測試發現的缺陷更多

(3)對測試質量的依賴性極大

(4)測試自動化不能提高有效性

(5)測試自動化可能制約軟件開發,自動化測試比手工測試更脆弱,所以維護會受到限制,從而制約軟件的開發

(6)工具本身並無想像力

三、自動化測試框架選型

原則

●選擇儘可能少的自動化產品覆蓋儘可能多的平台,以降低產品投資和團隊的學習成本;
●測試流程管理自動化通常應該優先考慮,以滿足為企業測試團隊提供流程管理支持的需求;
●在投資有限的情況下,性能測試自動化產品將優先於功能測試自動化被考慮;
●在考慮產品性價比的同時,應充分關注產品的支持服務和售後服務的完善性;
●盡量選擇趨於主流的產品,以便通過行業間交流甚至網絡等方式獲得更為廣泛的經驗和支持;
●應對測試自動化方案的可擴展性提出要求,以滿足企業不斷發展的技術和業務需求。

對比

Python:

缺點:接口的字段需要進行加解密的操作,目前加解密方法開發已使用Java類型的代碼完成了編寫,如果使用python進行框架的編寫會增加代碼的編寫量,所以python對於我們不是合適的實現代碼。

優點:簡單的語法、豐富的第三方庫

Java:

優點:可以直接套用開發編寫的加解密方法來進行接口自動化代碼的編寫,節省大量的時間。

四、框架構建

Java+Maven+TestNG+HttpClient+Jenkins