基於 Springboot+vue 的介面自動化平臺
前言
為什麼要做這個介面自動化平臺?
- 網上有各種形形色色的優秀的開源平臺,但都不是我自己寫的。改別人的程式碼太痛苦了,還不如自己寫一個
- 公司沒有介面平臺,介面都放在postman裡,不方便管理,也不方便共享
- 提升自己的競爭力
這個介面自動化平臺做了多久?
1.從7月份決定開始做,決定技術棧:springboot + vue + mybatis-plus + shiro +. ..
2.構思怎麼做,去postman,YApi,各個平臺上找靈感
3.最開始許可權這塊打算自己用shiro做,寫到一大半的時候,發現自己不會寫前端程式碼,於是去找了個開源的前端+後端許可權管理平臺,推倒了重新來,附開源平臺的地址:https://github.com/goufaning/permission,感謝這位大哥,感謝開源,省了一大堆需要寫的程式碼
4.覺得開源平臺的UI有點點醜(大哥對不起),打算自己重新寫。由於前端水平菜的一筆,學了將近一個月的vue從入門到精通(學完了才發現還是入門)
5.終於等一切拖拖拉拉搞定了,到了國慶節的第一天,打算開始了,到了國慶節的第八天才起了個不倫不類的名字,AutoToAll--一切都自動化,既是目標也是實在想不出其他的名字了
6.到昨天(12月11號)終於上了伺服器,下週一開始公司內部用起來,總共兩個月多點,真正寫程式碼的時間頂多一個半月,該死的拖延症。。。只寫了第一個版本,後面需要功能和優化的一大堆
設計思路是什麼樣的?
- 憑空想象
- 借鑑(抄襲)
- 原則上不喜歡選單太多的(比如url一個選單,專案一個選單,介面一個選單,用例一個選單,分的太開了特別討厭),不喜歡操作太麻煩的(postman的key 和 value 分開),我的平臺全憑我自己的喜好佈局(寫的爛開發也不敢說話)
正文
登入頁--工具人
介面相關的選單:介面除錯和產品列表
介面除錯高仿postman
請求引數只分兩種form-data,json,目前公司的介面這兩種已經完全夠用了
除錯沒問題了,可以直接儲存到產品下的目錄裡
然後進入產品列表,這裡所有的按鈕都做了許可權控制,但是沒有做資料許可權,後續會優化這塊
點選產品名稱進入介面列表,左邊是介面列表樹,右邊是表格形式的
點兩個紅框的地方,可以進行介面除錯,佈局同上
點選右上角的新增介面到新增介面頁面,當然可以點第二個tab先進行介面除錯,再儲存,佈局同上
新增介面和編輯介面的右上角都有:專案通用常量 和 本專案可用公共引數
專案通用常量:所有地方都能用的常量,格式是 @常量名稱,另外還有隨機數生成函式,格式是_randomNum(6) (隨機生成長度6位的數字)
本專案可靠用公共引數:只在本專案中可用,到其他專案不能用,格式是:${global:xxxx}
請求引數是form-data格式的編輯頁,header和請求引數已經被分割成key和value了,還可以新增描述
請求引數是json格式的編輯頁,另外新增了key,value,描述,可以自己新增
當然介面編輯頁,也可以介面除錯。。。不過這次只有一個按鈕了
再看介面詳情頁,當然也可以除錯了
但是詳情頁多了兩個功能,引數化和結果校驗
引數化支援獲取請求引數的value,response的value,該引數化只支援本專案的介面,除錯以後可以生成value
結果校驗是對resonse進行校驗,後續會支援jsonschema和sql校驗(抄襲了兔子的結果校驗 @l54808821 )
介面列表的第二個tab是介面集合,支援將本專案的介面加入到集合中進行批量執行
點選立即執行完成後,再點檢視日誌,可以看到近十條日誌
第三個按鈕是定時任務,可選每天,週一到週日的某個時間
調換介面順序,放到了集合的編輯頁,可以拖拽table來調換順序
最後執行完成後,如果失敗了會同步到企業微信
後續
以上是第一個版本的所有功能了,很多都靠YY,自以為是,不知道具體使用起來怎麼樣,下週可以見分曉了 !!加油,努力!!
後面打算做的介面相關的功能:1. mock 2.批量除錯的時候可以日誌同步在前臺展示 3. fuzz
預計年後開源,以前還以為有些大神說程式碼寫的爛是瞎扯,現在看看我寫的程式碼,那是真的爛
相關文章
- 基於 Springboot+vue 的介面自動化平臺 (二)Spring BootVue
- 基於 Springboot+layui 實現介面自動化平臺Spring BootUI
- 基於 HttpRunner 的介面自動化測試平臺宣講 (已落地)HTTP
- 基於 Django 和 Vue 前後端分離介面自動化平臺DjangoVue後端
- 基於 HttpRunner + Django + Vue + Element UI 的介面自動化測試平臺,生產可用HTTPDjangoVueUI
- Django 介面自動化測試平臺Django
- 基於RestAssured實現介面自動化REST
- Linux下搭建介面自動化測試平臺Linux
- springboot+Vue 實現介面測試平臺Spring BootVue
- [opendx] 基於 appium 的移動端 UI 自動化測試平臺-介紹篇APPUI
- 基於Python的介面自動化-讀寫excel檔案PythonExcel
- 基於 RF 的 WEB 版自動管理測試平臺Web
- 關於自動化平臺的動態選單設計(二)
- 介面自動化測試的覆蓋和 Diff 平臺的悖論
- 基於 Django 的 Dubbo 介面測試工具平臺Django
- 自動化測試平臺
- Apifox(1)比postman更優秀的介面自動化測試平臺APIPostman
- 自動更新 Swagger 介面資料到 YApi 平臺SwaggerAPI
- [自動化]基於kolla的自動化部署ceph叢集
- 【吐槽】低程式碼的介面自動化測試平臺不好用
- [小團隊自動化] 基於Gitea打造一個屬於你自己的程式碼託管平臺Git
- UI 自動化測試平臺UI
- 基於Python+requests搭建的自動化框架-實現流程化的介面串聯Python框架
- 基於 Pytest+Requests+Allure 實現介面自動化測試
- 基於Python+Requests+Pytest+YAML+Allure實現介面自動化PythonYAML
- 手把手教你基於 JMeter 開發一個自動化測試平臺 (2)JMeter
- 手把手教你基於 JMeter 開發一個自動化測試平臺 (1)JMeter
- 基於信創運維平臺,實現國產化網路自動巡檢運維
- 基於Python的介面自動化-unittest測試框架和ddt資料驅動Python框架
- 用於工業自動化的高精度直線電機平臺
- 基於gulp的前端自動化方案前端
- 各位測試大佬可有實用的介面自動化測試平臺推薦?
- 基於Python的介面自動化實戰-基礎篇之讀寫配置檔案Python
- 自動化平臺的幾個小計劃
- 自動化運維平臺的流程草圖運維
- 一個基於多介面的業務自動化測試框架框架
- 帶你瞭解基於Ploto構建自動駕駛平臺自動駕駛
- 活動運營自動化平臺實踐