基於 Django 的 Dubbo 介面測試工具平臺
日常工作中會需要對Dubbo介面進行呼叫和測試,之前是通過指令碼請求,為了做到通用性,所以弄了個小的測試工具平臺,後續會增加流量回放功能,用來支援壓測場景。
該平臺採用Django rest framework +VUE的前後端分離,前端使用了網上的一個開源專案,有需要的可以參考 https://github.com/PanJiaChen/vue-admin-template
專案啟動
啟動後臺專案
git 拉去master程式碼 TestPlatform https://github.com/627886474/TestPlatform
在settings中修改你的mysql配置
在config.ini中填上你zookeeper的地址
然後下載相關依賴包
pip install -r package.txt
生成資料庫表
python manage.py makemigrations
python manage.py migrate
最後啟動後臺服務
python manage.py runserver
服務啟動成功,接下來 啟動前端專案
啟動前端專案
git 拉去master程式碼 TestPlatform-web
https://github.com/627886474/TestPlatform-web
進入主目錄
npm install
npm run dev
介面演示
註冊使用者,手機號,郵箱不能重複
註冊成功後,登入賬號,進入後臺管理頁面
進入Dubbo介面 服務呼叫選單,填入相關引數,對於不同Dubbo介面的入參說明請參考最後的說明
請求完成後,會有一條請求記錄,可以“一鍵填充”。這樣可以方便你使用別人的請求引數,不用在自己拼接引數
請求引數說明:
一共有四個引數:
service_name: 服務名,如 com.zl.ITestService
dubbo_method: 方法名,如 add
params_type: 入參的型別,這裡只有兩種 “class”和"others" ,"class”表示入參是實體類,“others”表示是實體類之外的所有型別
params: 方法需要的引數
請求示例:
服務中的方法是 :
Object addStudent(UserAO user)
{
"service_name":"com.zl.ITestService",
"dubbo_method":"add",
"params_type":"class",
"params":{
"class":"com.zl.entity.ao.UserAO",
"school":[
"1",
"2"
],
"name":"zl",
"tuofa":"true"
}
}
服務中的方法是 :
Object getStudent(Integer id, List<String> name),引數需要使用 [] 包起來
{
"service_name": "com.zl.ITestService",
"dubbo_method": "add",
"params_type":"others",
"params": [
123,
[
"zl"
]
]
}
列舉類請求:
Object getStudent(Integer itemId, StudentEnum studentEnum);
列舉類的類名: com.zl.item.entity.StudentEnum
需要使用到的列舉類:GOOD_STUDENT,填寫格式如下 :
{
"service_name": "com.zl.ITestService",
"dubbo_method": "add",
"params_type":"others",
"params": [
123,{"name": "GOOD_STUDENT", "class": "com.zl.item.entity.StudentEnum "}
]
}
常見的異常情況:
1、請求引數異常
請求Dubbo介面如果填入的引數有誤,會報 no such method 的錯誤,請檢查一下引數是否正常
2、對於入參是Boolean型別的資料
在json中,直接 使用{“data”:true}即可,但是在python請求時需要使用 “true”,加上雙引號
如果你遇到了其他的問題歡迎留言
配套教程請檢視 :https://blog.csdn.net/zxc19854/article/details/108344069
相關文章
- Django 介面自動化測試平臺Django
- 基於 HttpRunner + Django + Vue + Element UI 的介面自動化測試平臺,生產可用HTTPDjangoVueUI
- 基於Dubbo的http自動測試工具分享HTTP
- Django+Vue+Docker搭建介面測試平臺實戰DjangoVueDocker
- 測試平臺之介面測試
- 基於 HttpRunner 的介面自動化測試平臺宣講 (已落地)HTTP
- 適合於跨平臺的C++測試工具C++
- dmonitor 基於 Django 的輕量級生產環境介面監控平臺Django
- 基於 RF 的 WEB 版自動管理測試平臺Web
- Jmeter實現 Dubbo介面測試JMeter
- 基於 Django 和 Vue 前後端分離介面自動化平臺DjangoVue後端
- 關於測試平臺的搭建 (我們要不要搭建測試平臺)
- 基於LangChain手工測試用例轉介面自動化測試生成工具LangChain
- 使用 MeterSphere 進行 Dubbo 介面測試
- 『動善時』JMeter基礎 — 52、使用JMeter測試Dubbo介面JMeter
- 介面測試工具
- 介面測試平臺,歡迎大家體驗
- teprunner測試平臺Django引入pytest完整原始碼Django原始碼
- 基於LINUX平臺的自動化測試的研究與應用
- Windows平臺自動化測試工具基於的一些技術簡介(筆記)Windows筆記
- 基於多語言的跨平臺靜態測試解決方案
- 如何測試有 dubbo 隱式傳參的介面
- windows平臺IO測試工具ATTO Disk BenchmarkWindows
- 介面測試工具-PostmanPostman
- 各位測試大佬可有實用的介面自動化測試平臺推薦?
- Apifox介面測試教程(一)介面測試的原理與工具API
- 對比測試工具平臺讓財務測試飛起來
- 基於知識圖譜的呼叫鏈分析精準化測試平臺
- 一篇文章入門django開發 (測試平臺)Django
- 基於Python+Django的Kubernetes叢集管理平臺PythonDjango
- Linux下搭建介面自動化測試平臺Linux
- FastAPI專案實戰:"非同步"介面測試"平臺"ASTAPI非同步
- springboot+Vue 實現介面測試平臺Spring BootVue
- 銀行軟體測試:基於網際網路金融平臺的測試框架設計與分析框架
- 基於chaosblade的故障注入平臺小試
- 利用 lenosp 腳手架搭建測試工具平臺
- 測試平臺起航
- 介面測試工具和使用