成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

jmeter壓測(cè)java代碼-創(chuàng)新互聯(lián)

一、背景

直接壓測(cè)、調(diào)用java工程中的方法。(沒(méi)有http等的入口)

為靈武等地區(qū)用戶(hù)提供了全套網(wǎng)頁(yè)設(shè)計(jì)制作服務(wù),及靈武網(wǎng)站建設(shè)行業(yè)解決方案。主營(yíng)業(yè)務(wù)為成都網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)、靈武網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專(zhuān)業(yè)、用心的態(tài)度為用戶(hù)提供真誠(chéng)的服務(wù)。我們深信只要達(dá)到每一位用戶(hù)的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!二、java項(xiàng)目改造

一個(gè)java項(xiàng)目,想要壓測(cè)其中的幾個(gè)方法。我們需要在該工程中,添加一個(gè)壓測(cè)入口的類(lèi),

這個(gè)類(lèi)必須繼承或者實(shí)現(xiàn)jmeter提供的接口/類(lèi)。

舉例子,如原來(lái)的一個(gè)maven項(xiàng)目。

在HelloWorld類(lèi)下,有個(gè)hi 的方法。 傳入 name,返回 hi+name。

package cn.cs.hello;

public class HelloWorld {
    public String hi(String name){
        return "hi"+name;
    }
}

我們想要對(duì) hi方法,使用jmeter進(jìn)行壓測(cè)。

2.1 依賴(lài)?

需要在pom文件中新增兩個(gè)依賴(lài)。

org.apache.jmeterApacheJMeter_core3.0org.apache.jmeterApacheJMeter_java3.0

2.2 新建壓測(cè)入口

新建一個(gè)TestHello 類(lèi),作為壓測(cè)的入口。 這個(gè)類(lèi),必須實(shí)現(xiàn) 接口JavaSamplerClient。

package cn.cs.test;


import cn.cs.hello.HelloWorld;
import org.apache.jmeter.config.Arguments;
import org.apache.jmeter.protocol.java.sampler.JavaSamplerClient;
import org.apache.jmeter.protocol.java.sampler.JavaSamplerContext;
import org.apache.jmeter.samplers.SampleResult;

public class TestHello implements JavaSamplerClient {
    @Override
    public void setupTest(JavaSamplerContext javaSamplerContext) {

    }

    @Override
    public SampleResult runTest(JavaSamplerContext javaSamplerContext) {
        // 創(chuàng)建一個(gè)jmeter 要求的返回類(lèi)型SampleResult
        SampleResult sr = new SampleResult();

        try{
            sr.sampleStart();
            HelloWorld helloWorld = new HelloWorld();
            // 獲取java請(qǐng)求的參數(shù)
            String name=javaSamplerContext.getParameter("張三");
            String str = helloWorld.hi(name);
            // 給jmeter 設(shè)置響應(yīng)結(jié)果。 將str設(shè)置為響應(yīng)結(jié)果。null 這應(yīng)該應(yīng)該填結(jié)果的編碼,我們這里填null也可以。
            sr.setResponseData(str,null);
            // 設(shè)置是否成功
            sr.setSuccessful(true);

        } catch (Exception e){
            // 設(shè)置 為失敗,的返回結(jié)果
            sr.setSuccessful(false);
            // 設(shè)置SampleData 為異常信息
            sr.setSamplerData(e.getMessage());
            // 打印異常棧
            e.printStackTrace();

        }
        sr.sampleEnd();

        return sr;
    }

    @Override
    public void teardownTest(JavaSamplerContext javaSamplerContext) {

    }

    // java請(qǐng)求的參數(shù)
    @Override
    public Arguments getDefaultParameters() {
        Arguments arguments = new Arguments();
        arguments.addArgument("name","張三");
        return arguments;
    }
}

方法講解:

getDefaultParameters 方法,設(shè)置請(qǐng)求的默認(rèn)參數(shù)

在本次例子中,hi方法,只需要一個(gè)name的參數(shù)。則jmeter腳本中,傳參數(shù)也只需要一個(gè)。

設(shè)置一個(gè)默認(rèn)的name 為張三。 當(dāng)jmeter沒(méi)有穿參時(shí),name=張三。

當(dāng)jmeter傳參數(shù)時(shí),name取傳的值。

方法:public SampleResult runTest(JavaSamplerContext javaSamplerContext)? 進(jìn)行邏輯處理(調(diào)用需要壓測(cè)的方法,及返回結(jié)果)

@Override
    public SampleResult runTest(JavaSamplerContext javaSamplerContext) {
        // 創(chuàng)建一個(gè)jmeter 要求的返回類(lèi)型SampleResult
        SampleResult sr = new SampleResult();

        try{
            sr.sampleStart();
            HelloWorld helloWorld = new HelloWorld();
            // 獲取java請(qǐng)求的參數(shù)
            String name=javaSamplerContext.getParameter("張三");
            String str = helloWorld.hi(name);
            // 給jmeter 設(shè)置響應(yīng)結(jié)果。 將str設(shè)置為響應(yīng)結(jié)果。null 這應(yīng)該應(yīng)該填結(jié)果的編碼,我們這里填null也可以。
            sr.setResponseData(str,null);
            // 設(shè)置是否成功
            sr.setSuccessful(true);

        } catch (Exception e){
            // 設(shè)置 為失敗,的返回結(jié)果
            sr.setSuccessful(false);
            // 設(shè)置SampleData 為異常信息
            sr.setSamplerData(e.getMessage());
            // 打印異常棧
            e.printStackTrace();

        }
        sr.sampleEnd();

        return sr;
    }

2.3 然后將maven項(xiàng)目打jar包。

然后將maven項(xiàng)目打jar包。將這個(gè)jar放置到j(luò)meter/lib/ext 目錄下。

重啟jmeter。在線(xiàn)程組中,添加---取樣器--- java請(qǐng)求。

在java請(qǐng)求取樣器中,選擇剛剛放進(jìn)去的jar包就可以了。

在傳參處寫(xiě)上我們的參數(shù),就像普通的http格式一樣。

就可以進(jìn)行壓測(cè)了。

三、問(wèn)題處理

依賴(lài)包ApacheJMeter_core、ApacheJMeter_java 下載不下來(lái)。

emm 這個(gè)問(wèn)題我也沒(méi)搞定。

你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級(jí)服務(wù)器適合批量采購(gòu),新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧

網(wǎng)頁(yè)題目:jmeter壓測(cè)java代碼-創(chuàng)新互聯(lián)
標(biāo)題網(wǎng)址:http://jinyejixie.com/article28/pigcp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信小程序品牌網(wǎng)站建設(shè)自適應(yīng)網(wǎng)站、微信公眾號(hào)動(dòng)態(tài)網(wǎng)站、App設(shè)計(jì)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都網(wǎng)頁(yè)設(shè)計(jì)公司
崇礼县| 卫辉市| 陆良县| 商水县| 若羌县| 敖汉旗| 铁力市| 梁山县| 巴东县| 广水市| 霍邱县| 珲春市| 淮滨县| 阳原县| 镇坪县| 高州市| 梅河口市| 祁东县| 清流县| 通化县| 新津县| 嘉祥县| 军事| 永昌县| 高州市| 米泉市| 阳新县| 海淀区| 庆元县| 吉首市| 马关县| 昌都县| 三都| 屯门区| 大宁县| 谷城县| 聊城市| 吉木萨尔县| 余干县| 永靖县| 太康县|