? ? ? ?在如今開源的時代,我們就不要再閉門造車了,熱烈的擁抱開源吧!本文針對性能測試、Web UI 測試、API 測試、數據庫測試、接口測試、單元測試等方面,為大家整理了github或碼云上優秀的自動化測試開源項目,我只當一回搬運工,希望能給大家帶來一點幫助。
一、性能自動化測試
1、項目名稱:基于Jmeter實現的在線壓測平臺和在線管理Jmeter腳本系統
項目簡介:
本項目基于renren-fast Java開發平臺開發,內核基于Jmeter-Api和Jmeter腳本實現在線性能壓測。
具有如下特點:
友好的代碼結構及注釋,便于閱讀及二次開發
實現前后端分離,通過token進行數據交互,前端再也不用關注后端技術
靈活的權限控制,可控制到頁面或按鈕,滿足絕大部分的權限需求
頁面交互使用Vue2.x,極大的提高了開發效率
完善的代碼生成機制,可在線生成entity、xml、dao、service、html、js、sql代碼,減少70%以上的開發任務
引入quartz定時任務,可動態完成任務的添加、修改、刪除、暫停、恢復及日志查看等功能
引入API模板,根據token作為登錄令牌,極大的方便了APP接口開發
引入Hibernate Validator校驗框架,輕松實現后端校驗
引入云存儲服務,已支持:七牛云、阿里云、騰訊云等
引入swagger文檔支持,方便編寫API接口文檔
引入路由機制,刷新頁面會停留在當前頁
引入最新版本Jmeter-Api,支持分布式壓測,測試報告生成及在線查看下載。
引入Echarts,支持在線觀測性能壓測結果。
項目地址:https://gitee.com/smooth00/stressTestSystem
2、項目名稱:分布式壓力測試工具?Beetle.DT
項目簡介:基于 .NET 實現的分布式壓力測試工具,用戶可以根據需求編寫相關的測試用例;通過工具的管理界面即可以把測試用例推送到服務中心,再根據實際壓測的需求把測試用例分配到不同節點上運行。工具會根據測試的情況實時獲取測試結果,測試完成后用戶還可以查詢具體的測試報告。節點采用進程隔離的方式運行測試用例,所以測試用例的運行都是相互獨立。
項目地址:https://gitee.com/ikende/Beetle.DT
3、項目名稱:基于 Go 的壓力測試工具?armyant
項目簡介:armyant 是從 http 壓力測試工具 hey 改裝而成。不過,hey 只支持 http 接口的壓力測試,而 armant 可以自定義壓測協議。目前默認實現了 http,mqtt 兩種協議的壓力測試。
項目地址:https://gitee.com/plug/armyant
二、Web UI 自動化測試
1、項目名稱:自動化測試平臺 LuckyFrame?
項目簡介:本項目是一款免費開源的測試平臺,最大的特點是全緯度覆蓋了接口自動化、WEB UI自動化、APP自動化,并且支持分布式測試,測試關鍵字驅動也很大程度上解決了測試同學代碼基礎弱的問題。同時也集成了質量管理相關的一些功能,解決 QA 的日常工作中,項目過程數據的收集問題,并能展示一些簡單質量報表。
項目地址:https://gitee.com/seagull1985/LuckyFrameWeb
2、項目名稱:AutoLine開源平臺
項目簡介:AutoLine開源平臺是一個開源自動化測試解決方案,基于RobotFramework進行二次開發,支持RobotFramework幾乎所有的庫。
項目地址:https://gitee.com/lym51/AutoLine
三、APP 自動化測試
項目名稱:Opendx?基于Appium的開源自動化測試平臺
項目簡介:Opendx 是一個開源的自動化測試平臺,底層采用appium,目前已支持Android和iOS的自動化測試。平臺沒有對appium做任何入侵及修改,我們可以隨意升級appium版本,使用其新特性。
項目地址:https://jiangyitao.gitee.io/opendx/
四、接口自動化測試
1、項目名稱:Restful Api 集成測試工具?Hitchhiker
項目簡介:Hitchhiker 是一款開源的 Restful Api 測試工具,支持Schedule, 數據對比,壓力測試,支持上傳腳本定制請求,可以輕松部署到本地,和你的team成員一起管理 Api。
項目地址:https://gitee.com/iwxiaot/Hitchhiker
2、項目名稱:自動化測試平臺?phoenixframework
項目簡介:phoenixframework 是一個自動化測試平臺,集代碼托管, 分機(node節點)管理,定時任務,分布式或并發等方式執行通過 phoenix_develop 模塊調試好的用例。平臺使用 SSH4 開發,覆蓋了 webgui,接口,移動mobile 等終端的測試與監控。
目前 webGUI 模塊已經完成,兼容 chrome,Firefox,IE,httpunit 以及 phantomjs 驅動。
項目地址:https://gitee.com/phoenixframework/phoenixframework
3、項目名稱:TCP/UDP 測試工具?SocketDebugger
項目簡介:SocketDebugger 是一款 TCP/UDP 測試工具,并且包括串口轉發功能,以及自動回復功能。
項目地址:https://gitee.com/hkiaipc/Socket-Debugger
4、項目名稱:HTTP 接口測試插件?ApiDebug
項目簡介:ApiDebug?是一個瀏覽器HTTP接口測試插件,可以用來測試 HTTP、HTTPS接口。支持POST、GET 等方式,同時也支持 json、xml 等自定義接口參數。系統支持保存歷史記錄,也可同步測試接口至 CrapApi 接口管理系統(登陸?http://api.crap.cn?,點擊同步即可保存)。除接口測試外,系統還包含 json 格式化等小工具。?
項目地址:https://gitee.com/CrapApi/ApiDebug
?5、項目名稱:基于 Java 的 Http 接口測試工具
項目簡介:JApiTest?是使用 java 開發的 Http 接口測試工具,以可視化形式通過配置 http 參數訪問測試接口,并可對返回結果還有判斷。
項目地址:https://gitee.com/penngo/JApiTest
6、項目名稱:基于 Python3.6的Django 2.0.2框架的接口測試工具
項目簡介:系統采用Django REST framework編寫接口,前端頁面采用比較容易上手的vue+elementUI。
項目地址:https://github.com/githublitao/api_automation_test
7、項目名稱:FXTest測試平臺
項目簡介:flask + Python3.6 實現的API自動化測試平臺。
項目地址:https://github.com/liwanlei/FXTest
8、項目名稱:基于開源的httprunner接口自動化框架平臺
項目簡介:
前端:js vue element-ui
github地址:https://github.com/pencil1/ApiTestWeb
后端:python flask httprunner
github地址:?https://github.com/pencil1/ApiTestManage
?五、數據庫自動化測試
項目名稱:數據庫單元測試框架?xlsunit
項目簡介:面向數據庫應用的單元測試框架,使用excel,作為輸入,以及輸出比較,適合大量數據庫操作。
如下情況可以使用 xlsunit:
必須使用 Spring 或者 Spring Boot,因為會利用 Spring 單元測試事務回滾機制。
面向數據庫應用,特別是一個業務操作,有多個表的變化。
xlsunit 支持 Spring 4 以上,SpringBoot1.5 以上,支持 Oracle,MySql,Postgres 等數據庫。
項目地址:https://gitee.com/xiandafu/xlsunit
六、數據調優測試
? ? ? ?影響系統性能和效率,數據庫起到一個非常關鍵的作用,而SQL的優化又是成本最低的一種優化方式,所以我把這一項也列為測試人員需要關注的方面。
項目名稱:soar-web
項目簡介:基于小米 soar 的開源 sql 分析與優化的 WEB 圖形化工具,支持 soar 配置的添加、修改、復制,多配置切換,配置的導出、導入與導入功能。目前只支持mysql。
項目地址:https://github.com/xiyangxixian/soar-web
項目介紹:10月20日,在開源先鋒日(OSCAR DAYS)上,小米將宣布開源自研的SOAR(SQL Optimizer And Rewriter)。
? ? ? ?這是一款智能 SQL 優化和改寫工具,開發人員可以直接通過此工具快速的對自己的 SQL 進行質量檢查,生成評估報告,防止將問題 SQL 帶到線上從而導致服務質量下降。它不僅能夠盡可能地提高線上代碼質量,還能避免一些由于人為疏漏而帶來的隱患
? ? ? ?SOAR 由語法解析器、集成環境、優化建議、重寫邏輯、工具集五大模塊組成。它擁有獨立的不依賴數據庫的 SQL 解析能力,能夠通過提供的集成環境對 SQL 本身及數據庫環境進行評審,找出可能存在的隱患或問題。而web系統基于Python開發,后臺調用了小米的soar實現以上功能
---------------------
作者:smooth-z