導航:首頁 > 編程語言 > jmeter的java請求參數

jmeter的java請求參數

發布時間:2022-08-26 06:13:05

『壹』 jmeter介面測試參數的問題

一、創建工程、引包
1、創建java工程
2、引入Jmeter中lib\ext基礎包:ApacheJMeter_java.jar、ApacheJMeter_core.jar
3、引入Jmeter日誌包:jorphan.jar,logkit-2.0.jar,commons-logging-1.1.1.jar,avalon-framework-4.1.4.jar
4、引入httpclient-4.3.4.jar(是基於httpcore的一套客戶端)、httpcore-4.3.2.jar(是一套http協議實現包)

Jmeter用到的4個類:

Arguments

getDefaultParameters() 用於獲取界面的參數


SampleResult

runTest(JavaSamplerContext context) 類似於LR的Actionvoid

setupTest(JavaSamplerContext context) 初始化方法,類似於LR的init和Junit中的setUp()


void

teardownTest(JavaSamplerContext context) 類似於LR的end和Junit中的tearDown()


執行的先後順序為:getDefaultParameters() --> setupTest(JavaSamplerContext context) --> runTest(JavaSamplerContext context) --> teardownTest(JavaSamplerContext context)
常用的方法:
①、addArgument("name", "value") 定義參數
②、sampleStart() 定義事務的開始,類似於LR的lr_start_transaction,和LR一樣事務間不要放無關代碼
③、sampleEnd() 定義事務的結束,類似於LR的lr_end_transaction
④、setSuccessful(true、false) 設置運行結果的成功或失敗,Jmeter統計成功失敗的次數,在聚合報告中能夠體現。

『貳』 如何用Jmeter做壓力測試

在「伺服器名稱或ip」設置127.0.0.1,埠號設置:8080,「方法」設置post,路徑設置網站登錄的地址,如「/exam/operatorAction」。

登錄需傳入用戶、密碼。在「同請求一起發送參數」列表中添加參數。參數值根據web應用設置。如login_user=0001;login_password=1;actFlag=login。

一般網站登錄後,在tomcat中生成了session,之後訪問其他頁面將無需再次登錄,前提是瀏覽器需支持cookie。在jmap中也同樣,如要繼續訪問其他頁面,還需做下面關鍵的設置。

Apache JMeter

是Apache組織開發的基於Java的壓力測試工具。用於對軟體做壓力測試,它最初被設計用於Web應用測試,但後來擴展到其他測試領域。 它可以用於測試靜態和動態資源,例如靜態文件、Java小服務程序、CGI 腳本、Java 對象、資料庫、FTP伺服器, 等等。JMeter 可以用於對伺服器、網路或對象模擬巨大的負載,來自不同壓力類別下測試它們的強度和分析整體性能。

『叄』 jmeter的java請求中為什麼沒有調用beanshell腳本

一、操作變數:通過使用Bean shell內置對象vars可以對變數進行存取操作 a) varsget("name"):從jmeter中獲得變數值 b) varsput("key","value"):數據存到jmeter變數中 二、操作屬性:通過使用Bean shell內置對象props 可以對屬性進行存取操作jmeter beanshell裡面寫了函數怎麼調用

『肆』 jmeter怎麼從oracle資料庫中取出數據當做其他介面的請求參數

importjava.sql.*;publicclassDBConnect{//MySQL的JDBC驅動程序StringDBDriver="com.mysql.jdbc.Driver";//設置連接資料庫的參數privateStringuserName="root";privateStringuserPwd="";//資料庫的名字privateStringdbName="test";//連接資料庫privateStringsConnStr="jdbc:mysql://localhost/"+dbName+"?user="+userName+"&password="+userPwd;//資料庫連接對象privateConnectionconn=null;//資料庫語句對象publicStatementstmt=null;publicResultSetrs=null;//建立數據連接函數publicDBConnect(){try{//載入資料庫驅動程序Class.forName(DBDriver).newInstance();//建立連接conn=DriverManager.getConnection(sConnStr);//stmt=conn.createStatement();}catch(Exceptione){System.out.println("DBConnect():"+e.getMessage());}}//查詢publicResultSetexecuteQuery(Stringsql){try{stmt=conn.createStatement();rs=stmt.executeQuery(sql);}catch(SQLExceptionex){System.out.println("sql.executeQuery:"+ex.getMessage());}returnrs;}//更新publicbooleanexecuteUpdate(Stringsql){try{stmt=conn.createStatement();stmt.executeUpdate(sql);returntrue;}catch(SQLExceptionex){System.out.println("sql.executeUpdate:"+ex.getMessage());returnfalse;}}//關閉資料庫的連接publicvoidclose()throwsException{conn.close();stmt.close();}}此代碼為資料庫的連接及增刪查改。

『伍』 如何在jmeter中調用自己寫的java工具包

工具/原料
jmeter
eclipse
方法/步驟
通常用jmeter做http請求(或者其他類型)時,有時候要對請求的數據(或者響應的數據)進行特定的處理再進行請求,如加密、解密。
這時候我們可以用java自己寫一些工具類,利用jmeter提供的beanshell來調用我們的工具類對數據進行處理,然後再進行相關的請求。
首先在eclipse寫個屬於自己的工具類,我寫了一個根據左右邊界截取字元串的工具類GetStringWithLBRB.java,「選擇」你所有寫的類文件,「右擊」選擇導出,「導出」jar包(隨便命名,記住該類在eclipse中的包路徑即可)
然後將導出的jar包放到\apache-jmeter-2.12\lib\ext目錄里,在jmeter中創建一個項目,添加一個http request,在這個請求里我們添加一個前置beanshell。
在beanshell中導入我們的jar包(包路徑既我們在eclipse中看到的路徑),beanshell中的兩個方法是我們最常用到的:vars.get(String paramStr)、vars.put(String key,String value),前一個是從jmeter中獲得變數值,後一個是將數據存到jmeter變數中。
比如:
jmeter中有參數param1,那麼我們在beanshell中就可以通過
String param2 = vars.get(param1);
這樣param2就獲取到了jmeter中的參數param1的值了。
再比如:
String paramName=「abc123def」;
String paramName1=paramName.Substring(3,6);
vars.put(「paramName」,paramName1);
這樣paramName作為參數就存到jmeter中,我就能在jmeter下面步驟中使用${paramName}獲取到我處理後的值了。
這樣對於請求前要加密、請求後要解密的情況,我們就能自己寫工具包進行相關數據處理了。

『陸』 jmeter java請求和http請求有什麼不同

其實也沒什麼區別的,一樣的效果。
HTTP請求格式告訴我們,有兩個位置或者說兩種方式可以為request提供參數:request-line方式與request-body方式。
request-line

request-line方式是指在請求行上通過URI直接提供參數。
(1)
我們可以在生成request對象時提供帶參數的URI,如:

HttpUriRequest request = new HttpGet(
"http://localhost/index.html?param1=value1¶m2=value2");

(2)
另外,HttpClient程序包為我們提供了URIUtils工具類,可以通過它生成帶參數的URI,如:

URI uri = URIUtils.createURI("http", "localhost", -1, "/index.html",
"param1=value1¶m2=value2", null);
HttpUriRequest request = new HttpGet(uri);
System.out.println(request.getURI());

『柒』 jmeter的java請求javasimpleclient設置超時時間

可以設置。
可以設置,在httpsampler中點擊高級選項,timeouts可以設置。每一個http請求的Advanced。高級。右邊的timeout,設置成2000就行。

『捌』 jmeter中的java請求是什麼意思

很多時候我們在對比HTTP請求的時候都是直接在ExMobi程序中模擬的,如果請求簡單這種做法是可取的。 但是如果經過多次嘗試都對比不出來,或者請求比較復雜,這時候就需要藉助工具來幫助了。 這里推薦一個工具Jmeter。

『玖』 jmeter怎麼測試javaweb

1.打開Java編譯器,新建一個項目"TestLength",然後新建一個包"app".
2.從Jmeter的安裝目錄lib/ext中拷貝兩個文件"ApacheJMeter_core.jar"和"ApacheJMeter_java.jar"到"Tester"的項目中,然後引入這兩個JAR文件.(具體的引入方法參考各個Java編譯器的使用方法)
3.在"app"包中新建一個類,名字叫"TestLength",不過這個類要繼承"AbstractJavaSamplerClient"類,如果項目引入步驟二中的兩個文件,就可以找到"AbstractJavaSamplerClient"類了.
4."TestLength"類在繼承"AbstractJavaSamplerClient"類的同時也會繼承四個方法,分別是"getDefaultParameters","setupTest","runTest"和"teardownTest"方法."getDefaultParameters"方法主要用於設置傳入的參數;"setupTest"方法為初始化方法,用於初始化性能測試時的每個線程."runTest"方法為性能測試時的線程運行體;"teardownTest"方法為測試結束方法,用於結束性能測試中的每個線程.
5.具體實現代碼如下:
package app;
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;
import com.passpod.core.t8.*;
/**
* @author樂以忘憂
*
* TODO To change the template for this generated type comment go to
* Window - Preferences - Java - Code Style - Code Templates
*/
public class TestLength extends AbstractJavaSamplerClient{
private SampleResult results;
private String testStr;
//初始化方法,實際運行時每個線程僅執行一次,在測試方法運行前執行,類似於LoadRunner中的init方法
public void setupTest(JavaSamplerContext arg0) {
results = new SampleResult();
testStr = arg0.getParameter("testString", "");
if (testStr != null && testStr.length() > 0) {
results.setSamplerData(testStr);
}
}
//設置傳入的參數,可以設置多個,已設置的參數會顯示到Jmeter的參數列表中
public Arguments getDefaultParameters() {
Arguments params = new Arguments();
params.addArgument("testStr", ""); //定義一個參數,顯示到Jmeter的參數列表中,第一個參數為參數默認的顯示名稱,第二個參數為默認值
return params;
}
//測試執行的循環體,根據線程數和循環次數的不同可執行多次,類似於LoadRunner中的Action方法
public SampleResult runTest(JavaSamplerContext arg0) {
int len = 0;
results.sampleStart(); //定義一個事務,表示這是事務的起始點,類似於LoadRunner的lr.start_transaction
len = testStr.length();
results.sampleEnd(); //定義一個事務,表示這是事務的結束點,類似於LoadRunner的lr.end_transaction
if(len < 5){
System.out.println(testStr);
results.setSuccessful(false); //用於設置運行結果的成功或失敗,如果是"false"則表示結果失敗,否則則表示成功
}else
results.setSuccessful(true);
return results;
}
//結束方法,實際運行時每個線程僅執行一次,在測試方法運行結束後執行,類似於LoadRunner中的end方法
public void teardownTest(JavaSamplerContext arg0) {
}
}
6.把上面的例子打包,然後把生成的"TestLength.jar"文件拷貝到Jmeter的安裝目錄lib/ext下.
7.運行Jmeter,添加一個線程組,然後在該線程組下面添加一個Java請求(在Sampler中),在Java請求的類名稱中選擇咱們剛創建的類"app.TestLength",在下面參數列表的"testStr"後面輸入要測試的字元串,然後添加一個監聽器(聚合報告),設置一下模擬的用戶數就可以測試了.如果測試不成功,Jmeter會在它自己個輸出框中拋出這個字元串.
通過上面的例子我們可以發現,使用Jmeter自定義Java測試代碼,配合Jmeter自帶的函數,就可以實現出LoadRunner中"Java Vuser"協議的絕大多數功能,而且是沒有用戶數限制和完全免費的(嘿嘿).上面的例子非常簡單,而且沒有任何實際意義,只是一個簡單的Jmeter測試代碼示例,用於拋磚引玉,希望大家一起交流,共同 進步.

『拾』 jmeter http請求中的httpclient4和java有什麼區別

其實也沒什麼區別的,一樣的效果。
HTTP請求格式告訴我們,有兩個位置或者說兩種方式可以為request提供參數:request-line方式與request-body方式。
request-line

request-line方式是指在請求行上通過URI直接提供參數。
(1)
我們可以在生成request對象時提供帶參數的URI,如:

HttpUriRequest request = new HttpGet(
"http://localhost/index.html?param1=value1¶m2=value2");

(2)
另外,HttpClient程序包為我們提供了URIUtils工具類,可以通過它生成帶參數的URI,如:

URI uri = URIUtils.createURI("http", "localhost", -1, "/index.html",
"param1=value1¶m2=value2", null);
HttpUriRequest request = new HttpGet(uri);
System.out.println(request.getURI());

閱讀全文

與jmeter的java請求參數相關的資料

熱點內容
app紙有什麼用 瀏覽:219
cuteftp命令 瀏覽:502
最開始的編程語言是什麼 瀏覽:757
at遠程命令 瀏覽:490
雲伺服器哪家好點 瀏覽:211
android系統源碼閱讀 瀏覽:924
dumpjava分析工具 瀏覽:678
怎麼下載cpu源碼 瀏覽:154
代碼加密怎麼取消 瀏覽:888
編譯原理代碼在哪裡運行 瀏覽:584
解密攝影pdf 瀏覽:72
演算法編程中級題目 瀏覽:250
c語言編譯器畢業設計 瀏覽:717
醫保卡申請app哪個好 瀏覽:945
阿里雲伺服器上傳源碼 瀏覽:602
營銷管理科特勒pdf 瀏覽:696
願望清單app哪個好 瀏覽:461
安卓外放聲音怎麼解決 瀏覽:195
脈脈app干什麼用的 瀏覽:360
拽姐是哪個app 瀏覽:862