1. 程式人生 > >Jmeter使用實踐-接口diff測試

Jmeter使用實踐-接口diff測試

插件 face ges alt 實踐 簡單 ssa int 簡單的

Jmeter使用實踐-接口diff測試

大多數人都使用 Jmeter 做過性能測試,但是在使用的過程中你會發現,它不僅可以做性能測試和功能測試,還能夠滿足基本的接口測試需求。

相比其他工具,Jmeter 入門門檻較低,安裝也比較方便,根據自己的需要可以擴展一些插件,總之一句話: 優點太多了。

那麽問題來了,為什麽要做接口 diff 測試?

產品叠代較快,提高已有 case 回歸的效率,減輕工作量;

通過 diff 可以看到新的改動對已有功能的影響;

可以根據修改的代碼設置 case,有針對性的測試;

在開發聯調階段提前定位發現的問題。

下面就介紹下通過 Jmeter 進行 diff 測試的步驟:

1.添加測試計劃

2.添加 Threads

3.添加 Sampler-HTTP 請求

舊版本的接口:interfaceV1

4.針對 Sampler interfaceV1 添加後置處理器 - BeanShell PostProcessor,如圖:

技術分享

5.添加Sampler-HTTP請求

新版本的接口:interfaceV2

6.針對Sampler interfaceV2添加後置處理器 - BeanShell PostProcessor

技術分享

7.針對 Sampler interfaceV2 添加後置處理器 - BeanShell Sampler

8.

BeanShell Sampler 添加斷言 - BeanShell 斷言

技術分享

下面是針對響應的信息進行簡單的比較

resultV1 = vars.get("version1");

String[] firstLines = resultV1.split(" ");

resultV2 = vars.get("version2");

String[] secondLines = resultV2.split(" ");

for (i=0; i<firstLines.length; i++) {

if (!firstLines[i].equals(secondLines[i])){

j = i + 1;

Failure = true;

FailureMessage = FailureMessage + " 第 " + j + " 行不同." + " 版本1是: " + firstLines[i] + " 版本2是: " + secondLines[i];

}else{

FailureMessage = FailureMessage + " 兩個版本返回結果相同";

}

}

9.添加監聽器-斷言結果

10.運行腳本後,查看斷言結果

技術分享

經過以上幾步就完成了一個簡單的接口 diff 測試

如果想實現自動化,可以集成到 jenkins 中。針對不同的環境,要想保證腳本都能夠正常運行,可以添加配置元件 - 用戶定義的變量,將環境配置作為變量保存。

此外,如有其他小夥伴發現了更好的一些針對 diff 測試的工具或方法,請多多指教。

Jmeter使用實踐-接口diff測試