【Jmeter】- 使用 jmeter 進行 dubbo 接口測試

你們都知道 dubbo 是一個優秀 rpc 框架,它通常(dubbox 除外)經過對外提供 tcp協議的接口進行外部調用。而咱們平常使用的測試工具 jmeter 並不支持 dubbo 協議的請求。因此本文到此結束,謝謝觀看,再見。git

image.png

固然 jmeter 自己的確是不支持 dubbo 的請求,可是呢,有一個老哥,他經過 dubbo 的泛化調用特性寫了一個jmeter 的插件,使用這個插件能夠很方便的進行 dubbo 接口的調用。下面就來講說若是使用 jmeter 進行 dubbo 接口測試。github

安裝插件

  1. 首先咱們要安裝的這個插件叫 jmeter-plugins-for-apache-dubbo,下面是他相關的幾個地址
  2. 項目的 github 地址
  3. 官方文檔地址
  4. 各版本下載地址
  5. 下載插件

安裝插件的第一件事確定是下載了,點擊上面的各版本下載地址去下載最新的插件,這裏有兩點要注意。apache

  1. 第一,做者版本記錄放在github,下載的包放在的倒是碼雲,可能基於下載速度的考慮。可是碼雲下載超過1M 要強制登陸,因此前提你要有一個碼雲帳號。
  2. 第二,做者打了兩種包,一種是包含依賴的包 jmeter-plugins-dubbo-x.x.x-jar-with-dependencies.jar,另外一種不包含依賴的包 jmeter-plugins-dubbo-x.x.x.jar。通常狀況下推薦使用第一種,直接可使用。第二種還要下載項目依賴的包再一個一個放進去。除非出現依賴衝突,不然別沒事找事。
  3. 安裝插件

安裝就比較簡單了,把上步下載的包放入jmeter 安裝目錄下的 ${JMETER_HOME}\lib\ext,重啓就 OK 了json

打開 Jmeter

默認會建立一個 Test Plan (測試計劃)框架

image.png

建立線程組

在 Test Plan 上右擊,而後添加 -> 線程 -> 線程組tcp

image.png

線程組配置

   若是隻是接口測試的話直接用默認配置的就能夠了,這些配置與壓測有關,後面會另起文章說明ide

image.png

添加 dubbo 默認配置

右擊線程組,添加 -> 配置元件 -> Dubbo Config工具

image.png

配置 dubbo 默認配置

這裏就須要按照你項目的具體狀況進行配置了測試

  1. Protocol 對應項目中 dubbo 使用的協議,這裏咱們使用的 zk 協議
  2. Address 就是你的註冊中心的地址了
  3. Group 項目配置的分組

其它按需配置就能夠了插件

image.png

添加 Dubbo 取樣器

右擊 線程組,添加 -> 取樣器 -> Dubbo Sample

image.png

配置 Dubbo 取樣器

  1. 得到接口列表

若是不想直接輸入的話,點擊 Get Provider List 會自動鏈接上面 Dubbo Config 配置的 zk 地址得到全部註冊的服務

  1. 點擊 Get Provider List 1. image.png

  2. 肯定提示 1. 點擊按鈕後會有一個可能會比較耗時的提示,無論點 Yes 就行 1. image.png

  3. 獲取完成後提示 1. image.png

  4. 選擇要進行測試的接口與方法

  5. 選擇你要調用的接口 1. 在 Interfaces 的下拉框選擇,固然你也能夠直接輸入 1. image.png

  6. 選擇你要調用的方法 1. 在 Methods 下拉框選擇,固然你一樣能夠輸入 1. image.png

  7. 設置參數 1. 咱們以一個判斷是否爲工做日的接口爲例

    1. 接口定義    

image.png

2. 參數定義
    1.

image.png

3. 響應值定義
    1.

image.png

2. 添加參數
  1. 點擊 Args 右邊的,增長按鈕
  1. 在 paramType 框內添加參數類的全限定名,注意這裏是 paramType 是**參數類型**而不是參數名稱
  1. 在 paramValue 添加你要傳參的參數類的 json 形式
  1.

image.png

運行接口

  1. 配置工做完成後,點擊工具欄的綠色運行按鈕

image.png

  1. 點擊後會有一個提示你先保存,直接 Yes 找個你喜歡的文件夾,而後再次點擊

image.png

添加察看結果樹

上一步運行後,運行一閃而過,除非查服務端日誌,不然咱們確定不知道響應的接口是什麼。因此要配置一下結果記錄 右擊 線程組,添加 -> 監聽器 -> 察看結果樹

image.png     再運行一次,發現察看結果樹內已經有請求記錄了,其中響應數據就是本次請求的結果。請求結果比真正的返回類多了一個 class 字段,由於是使用的泛化調用,這裏是告知響應類的類型

image.png

相關文章
相關標籤/搜索