介面測試 dubbo 介面測試技術

2021-08-21 05:45:47 字數 1561 閱讀 2727

dubbo是阿里巴巴開源的一套rpc方案,以為理念很契合微服務,這幾年很火,使用者裡面不凡京東,噹噹,去哪兒等大公司。

rpc場景

dubbo架構

官網也提供了乙個很簡單實用的demo來演示dubbo協議的使用,用起來的確很簡單強大。

可參考  首頁的例子已經很好了。

任何乙個dubbo服務都支援乙個簡單的telent互動。比如

telnet localhost 20880

>

ls-l

>

ls-l demoservice

> invoke demoserivce.sayhello(

"seveniruby"

)

這種方式只能用來簡單驗證介面的可用

首先建立乙個xml檔案放到resources下

<?xml version="1.0" encoding="utf-8"?>

xmlns=

""xmlns:xsi=

""xmlns:dubbo=

""xsi:schemalocation=

" /spring-beans.xsd /dubbo.xsd"

>

"demo-consumer"

/>

address=

"dubbo:"

/>

id="demoservice"

inte***ce=

"com.testerhome.tapi.dubbo.demoservice"

/>

通過使用乙份xml配置檔案進行測試

test

("dubbo use registy xml"

)

其實除了xml配置之外,官方也提供了乙份直接通過api進行配置的方式,這個方式無疑是可程式設計比較靈活的

test

("dubbo use registry"

)

官方原話是

泛化介面呼叫方式主要用於客戶端沒有 api 介面及模型類元的情況,引數及返回值中的所有 pojo 均用 map 表示,通常用於框架整合,比如:實現乙個通用的服務測試框架,可通過 genericservice 呼叫所有服務實現。

這種情況適合自己打造介面測試框架使用。以上2個方式都需要依賴研發提供的dubbo介面的jar包,這無疑會增加專案的負擔。

使用泛化可以不依賴任何研發提供的jar包,不過缺點也明顯,仍然需要jar包或者其他的文件去分析dubbo介面的呼叫引數資訊。

例子

test

("泛化呼叫 by provider conf use map"

)

雖然看起來還是依賴jar包,不過這個依賴就挺小了。如果你技術稍微「猥瑣」點,就應該可以想到,只需要借助asm之類的位元組碼分析框架即可自動生成介面測試用例模板了。

python測試dubbo介面

本文主要介紹使用python 呼叫hession協議dubbo 介面示例。關於dubbo hession協議 dubbo本身支援多種遠端呼叫方式,例如dubbo rpc 二進位制序列化 tcp協議 http invoker 二進位制序列化 http協議 hessian 二進位制序列化 http協議 ...

jMeter測試dubbo介面

1.建立執行緒組,新增dubbo請求。填寫zookeeper位址,如果有多個,可以用 隔開 2.get provider list獲取所有的介面列表 3.選擇介面和對應的方法 4.填寫引數名稱和值 1.建立執行緒組,新增dubbo請求 2.填寫直連位址 3.填寫介面和方法名 4.填寫引數 看完點贊 ...

使用jmeter 測試dubbo介面

1 打包dubbo介面以及相關依賴 3 將dubbo介面 依賴 jmeter dubbo 外掛程式一起放在jmeter 的 lib ext 目錄下 4 避免亂碼問題 jmeter 預設是 ios 8859 1 修改 jmeter bin jmeter.properties 這個檔案,增加 sampl...