JMeter 中實現發送Java請求


JMeter 中實現發送Java請求

 

1.  步驟1 新建JAVA項目

File -> New -> Java Project

JMeter_中實現發送Java請求

如上圖,填寫Project Name,然后Next,打開以Java Settings界面

 

 

如上圖,切換到Libraries標簽頁 -> 選擇Add Library -> User Libray,點擊Next 按鈕,打開以下 User Libraries界面

  

 

如上圖,點擊 New ,彈出窗中輸入自定義類庫名稱

 

選擇定義類庫(例中為 JMeter Lib),然后點擊 Add JARS 按鈕,添加$JMETER_HOME/lib 目錄下(包含子目錄下)jar(為了避免包之間的依賴性問題,可以考慮全部添加進來)

 

完成后,點擊OK按鈕,返回如下界面

 

JMeter_中實現發送Java請求 

點擊Finish,返回如下界面

 

 

點擊Finish

 

2.  步驟2 新建JAVA

右鍵src目錄 -> New -> Package,打開如下界面

 

點擊Finish,提交

 

 

3.  步驟3 新建JAVA Class

右鍵 包名 -> New -> Class,打開如下界面

點擊Finish,提交

 

再新建一個testDriver JAVA Class

 

4.  步驟4 編寫用例類

package testpkg;

 

import org.apache.jmeter.config.Arguments;

import org.apache.jmeter.protocol.java.sampler.AbstractJavaSamplerClient;

import org.apache.jmeter.protocol.java.sampler.JavaSamplerContext;

import org.apache.jmeter.samplers.SampleResult;

 

public class TestClass extends AbstractJavaSamplerClient {

 

private static long start = 0;

private static long end = 0;

private String id = "0";

 

 

 

@Override

public void setupTest( {

 

// 開始時間

start = System.currentTimeMillis();

}

 

 

@Override

public void teardownTest( {

// 結束時間

end = System.currentTimeMillis();

 

// 總體耗時

System.err.println("cost time:" + (end - start) / 1000);

}

 

 

public Arguments getDefaultParameters() {

 

Arguments args = new Arguments();

args.addArgument("id", "123456789"); // 添加默認參數及對應值  //參數名稱:id  參數值:123456789

 

return args;

}

 

  

  

 

 

@Override

public SampleResult runTest( {

id = arg0.getParameter("id");

boolean if_success = true;//測試結果標記位

SampleResult sr = new SampleResult(); // 為避免多線程問題,設置sr為局部變量

sr.setSampleLabel(";         // 設置采樣標簽,對應GUI 聚合報告里的Label

 

try {

//Start

sr.sampleStart(); // 開始統計響應時間

 

 

// TODO

System.out.println(id);

 

//sr.setResponseData("data return by server", "");  //第一個參數 設置JMeter GUI "查看結果樹" 請求對應的"響應數據" // 執行壓測前 建議注釋掉

sr.setResponseData("data return by server", "utf-8"); //第二個參數 為編碼, 設置JMeter GUI "取樣器結果"  DataEncoding: utf-8  // 第二個參數為 "", 則表示默認為 GBK編碼

   

sr.setDataType(SampleResult.TEXT); // 設置JMeter GUI "取樣器結果" Data type ("text"|"bin"|""):text

sr.setResponseMessageOK(); // 設置JMeter GUI "取樣器結果"  Response message: OK

     sr.setResponseCodeOK(); // 設置JMeter GUI "取樣器結果" Response code: 200

     if_success = true;

} catch (Exception e) {

if_success = false; // 請求失敗

sr.setResponseMessage("server error"); // 設置JMeter GUI "取樣器結果"  Response message: server error

     sr.setResponseCode("500"); // 設置JMeter GUI "取樣器結果" Response code: 500

e.printStackTrace();

} finally {

// End

sr.sampleEnd();

// setSuccessful 設置請求結果為 true--請求成功,JMeter查看結果樹中會顯示請求成功    false--請求失敗,JMeter查看結果樹中會顯示請求失敗

sr.setSuccessful(if_success);

}

 

return sr;

}

 

}

 

 

編寫測試代碼

package testpkg;

 

import testpkg.TestClass;

 

import org.apache.jmeter.config.Arguments;

import org.apache.jmeter.protocol.java.sampler.AbstractJavaSamplerClient;

import org.apache.jmeter.protocol.java.sampler.JavaSamplerContext;

import org.apache.jmeter.samplers.SampleResult;

 

public class testDriver {

 

public static void main(String[] args) {

TestClass obj = new TestClass();

 

Arguments params = new Arguments();

params.addArgument("id", "1234567890");

JavaSamplerContext arg0 = new ;

 

obj.runTest(arg0);

 

}

 

}

 

5.  步驟5 導出jar文件

File -> Export -> Java -> JAR file,打開如下界面

 

如圖,點擊Next按鈕,打開如下界面

 

 

如上圖,選擇要導出的類,然后選擇JAR file文件保存路徑,最后點擊Finish即可。把導出的jar放入JMeter_home/lib/ext目錄下,重啟JMeter

 

 

6.  步驟6 新建JMeter Java請求

右鍵線程組 添加->Sampler -> Java請求

 

 

如上,選擇要測試的類名,設置測試所需要參數(和其它參數一樣,可以做成參數化)

 

運行,查看結果

 

 

Jmeter 控制台輸出

JMeter_中實現發送Java請求 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM