Themis是新立訊軟件實驗室-自動化測試中心自主開發并集成的自動化測試框架,主要基于python、unittest及Locust進行二次開發。旨在進行對新立訊旗下所有產品進行多系統、多平臺的自動化測試服務。
Themis首先是一個WebUI的自動化框架,提供了賴以操作瀏覽器的一些API。從實踐上來說,基本涵蓋95%的應用場景。該框架主要由Python語言編寫,基于Selenium,可以認為是一個二次封裝的框架。該框架基于頁面對象模型架構,實現了關鍵字驅動技術,數據驅動。同時實現了數據與代碼分離的功能。
Themis其次是一個測試框架,使用Unittest管理和運行用例,基于requests。可以進行單元測試及接口測試,支持常用的HTTP中的POST、GET、PUT以及DELETE方法。測試對象包括FTP、MongoDB、Android、Appium,測試案例運用excel管理,測試結果報告生成html文件。
Themis還是一種設計風格:簡約。無論是Themis框架本身還是基于Themis編寫的測試用例,都是十分light及straightforward的。但在實踐中,這兩者確保了低成本、易用性及可維護性。極大的提高了工作效率并降低了溝通成本。
自動化集成平臺框架
? 充分復用優秀的開源項目,不追求重復造輪子,而是將強大的輪子組裝成戰車
? 遵循約定大于配置的準則,在框架功能中融入有效工程實踐
? 追求投入產出比,一份投入即可實現多種測試需求
? 繼承 Requests 的全部特性,輕松實現 HTTP(S) 的各種測試需求
? 測試用例與代碼分離,采用YAML/JSON的形式描述測試場景,保障測試用例具備可維護性
? 測試用例支持分層機制,充分實現測試用例的復用
? 測試用例支持參數化和數據驅動機制
? 使用 skip 機制實現對測試用例的分組執行控制
? 支持熱加載機制,在文本測試用例中輕松實現復雜的動態計算邏輯
? 結合 Locust 框架,無需額外的工作即可實現分布式性能測試
? 執行方式采用 CLI 調用,可與 Jenkins 等持續集成工具完美結合
? 測試結果統計報告簡潔清晰,附帶詳盡統計信息和日志記錄
信息展示