WebApi管理和性能測試工具WebApiBenchmarks

說到WebApi管理和測試工具其實已經很是多的了,Postman、Swagger等在管理和維護上都很是出色;在性能測試方面也有很多的工具如:wrk,bombardier,http_load和ab等等。不過這些工具都具備單一性,管理和維護好的在性能測試上比較低效,對於性能測試好的在管理和維護上不理想!如下主要介紹一款基於dotnet core開發的WebApiBenchmarks工具,這個工具能夠對webapi進行管理和維護並提供高效的性能測試能力,接下來來先預覽一下這個小工具再進行詳細介紹。css

功能

  • 支持簡單的服務管理,能夠隨時對不一樣服務的API進行單元和壓力測試
  • 支持分類的方式管理測試用例,用例支持定義GET,POST,DELETE和PUT等操做的定義
  • 提供高效的性能測試支持,在4核的PC上能夠達到20W rps的測試效能;
  • 支持多API同時壓測,並顯示相關性能指標數據進行參考和對比

部署

工具能夠運行在安裝有.net core 2.1或更高版本的Linux和Windows下,工具以http服務的方式啓動,經過瀏覽器訪問進行相關操做。 下載工具:https://github.com/IKende/WebApiBenchmarklinux

運行

  • linux
dotnet BeetleX.WebApiBenchmarks.dll 

orgit

./webapibenchmark.sh
  • windows
dotnet BeetleX.WebApiBenchmarks.dll 

orgithub

webapibenchmark.bat 

端口衝突

工具默認使用9090端口,若是端口被佔則沒法啓用服務,這個時候須要修改HttpConfig.json文件中的端口配置web

"Host": "", "Port": 9090, "SSL": false, 

打開工具

工具運行後能夠瀏覽器訪問相關地址打開工具,本機訪問http://localhost:9090/其餘電腦訪問http://ipaddress:9090/json

添加服務地址

工具能夠維護多個服務地址,全部的測試都必須選擇對應的地址才能運行測試。windows

地址必須是一個可用的http服務Urlapi

添加測試用例

工具支持GET,POST,DELETE和PUT請求定義,能夠根據實際狀況定義QueryString和Header值,並針對POST和PUT設置相應的Body內容。具體操做界面以下:瀏覽器

在編輯界面下面有個測試按鈕,能夠即刻測試API的調用狀況;選擇相應的服務地址點擊測試便可在下方看到完整的返回結果:bash

批量單元測試

工具支持批量執行測試用例,並在測試用例上顯示具體的執行結果;只要選擇須要測試的用例點擊單元測試便可:

性能測試

性能測試是組件提供的最重要功能,爲了確保性能測試的效率;組件重寫了一個輕量化的HttpClient,經過這個HttpClient即便在低配置的電腦上也能夠進行高效率的壓力測試。測試前須要選擇相應的服務地址和單元測試用例

測試參數設置

工具提供兩種測試方式,分別是基於時間和總請求數據,選擇對應的測試方式設置相應的測試數值便可;用戶數是指同時請求的數量,工具限制設置最大2000,設置完成後點擊開始按鈕便可進行測試

測試結果

工具會實時反映測試的狀況,主要包括HTTP響應狀態和響應延時分佈狀況,若是同時壓測多個API,則明細裏會實時顯示每一個API的響應狀態和響應延時狀況。具體以下:

 

相關文章
相關標籤/搜索