jmeter添加java请求和if控制器

新项目用jmeter做性能测试,导入别人写好的jar包,发现有if控制器和java请求,可是我看不懂这个脚本到底在干嘛,只好自己摸索。

java请求要自己写一个runable的jar包,继承jmeter的AbstractJavaSamplerContext类,然后改写runtest方法。具体代码如下。

步骤如下:

1. 打开eclipse,把代码写好,并export为runnable jar file (切记,jar file在jmeter里是找不到的)

默认导入代码会找不到命名空间,记得要在属性->build path里把jmeter的lib里的jar都导入,如下图

2. 把jar文件放到jmeter里的 lib\ext里,重启jmeter,添加线程组-> java请求 ->添加查看结果树。

就能看到执行结果了。

但是if控制器我还没设成功,等我找到原因再继续更新。

package jmeter_sample;

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 PerformanceTest extends AbstractJavaSamplerClient
{

    private static long start = 0;
    private static long end =0;
    private  String a,b, result;

    public void setupTest(JavaSamplerContext arg0)
    {
        start = System.currentTimeMillis();
    }

    public void teardownTest(JavaSamplerContext arg0)
    {
        end = System.currentTimeMillis();
        System.err.println("cost time" + (end-start)/1000);
    }

    public Arguments getDefaultParameters()
    {
        Arguments args = new Arguments();
        args.addArgument("num1","");
        args.addArgument("num2","");
        return args;
    }

    private static int sum(int a, int b)
    {return a+b;}

    public SampleResult runTest(JavaSamplerContext arg0)
    {
        SampleResult sr = new SampleResult();
        a = arg0.getParameter("num1");
        b = arg0.getParameter("num2");
        sr.setSampleLabel("hui");
        try
        {
            sr.sampleStart();
            result = String.valueOf( sum(Integer.parseInt(a),Integer.parseInt(b)));
            if(result !=null &&result.length()>0)
            {
                sr.setResponseData("结果是 "+result,null);
                sr.setDataType(SampleResult.TEXT);
            }
            sr.setSuccessful(true);
            sr.sampleEnd();
        }
        catch(Exception e)
        {    e.printStackTrace();}
        return sr;
    }

    public static void main(String[] args)
    {
        System.out.print("hello");
    }
}
时间: 2024-10-29 01:11:28

jmeter添加java请求和if控制器的相关文章

赵雅智_HttpClient的 get请求和post请求

DefaultHttpClient和它的兄弟AndroidHttpClient都是HttpClient具体的实现类,它们都拥有众多的API,而且实现比较稳定,bug数量也很少. 但同时也由于HttpClient的API数量过多,使得我们很难在不破坏兼容性的情况下对它进行升级和扩展,所以目前Android团队在提升和优化HttpClient方面的工作态度并不积极. 在Android开发中,Android SDK附带了Apache的HttpClient,它是一个完善的客户端.它提供了对HTTP协议的

HttpClient之Get请求和Post请求示例 编辑

HttpClient的撑持在HTTP/1.1标准中界说的一切的HTTP办法:GET, HEAD, POST, PUT, DELETE, TRACE 和 OPTIONS.每有一个办法都有一个对应的类:HttpGet,HttpHead,HttpPost,HttpPut,HttpDelete,HttpTrace和HttpOptions.一切的这些类均完成了HttpUriRequest接口,故可以作为execute的履行参数使用.恳求URI是可以使用恳求的一致资本标识符. HTTP恳求的URI包括一个协

HttpClient之Get请求和Post请求示例

HttpClient之Get请求和Post请求示例 博客分类: Java综合 HttpClient的支持在HTTP/1.1规范中定义的所有的HTTP方法:GET, HEAD, POST, PUT, DELETE, TRACE 和 OPTIONS.每有一个方法都有一个对应的类:HttpGet,HttpHead,HttpPost,HttpPut,HttpDelete,HttpTrace和HttpOptions.所有的这些类均实现了HttpUriRequest接口,故可以作为execute的执行参数使

JMeter学习(十七)JMeter测试Java

目的:对Java程序进行测试: 一.核心步骤1.创建一个Java工程:2.将JMeter的lib目录下的jar文件添加进此工程的Build Path:3.创建一个类并实现JavaSamplerClient接口或继承AbstractJavaSamplerClient,并重写: public Arguments getDefaultParameters();设置可用参数及的默认值: public void setupTest(JavaSamplerContext arg0):每个线程测试前执行一次,

如何区分get请求和post请求

今天再学MVC时遇到一个问题,那就是怎样区分一个请求是get请求还是post请求这,希望可以分享给大家. 当我在视图里请求一个控制器类的方法时,有时候需要有同名的方法,但是又要区分这两个方法.于是我在方法前加了[HttpPost]和[HttpGet]来区分是get还是post请求. [HttpPost] public ActionResult PermissionSon(FormCollection form){} [HttpGet] public ActionResult Permission

【转】JMeter学习(十七)JMeter测试Java

目的:对Java程序进行测试 目录 一.核心步骤 二.实例 三.JMeter JavaSampler介绍 四.自带javaRequest Sampler 一.核心步骤 1.创建一个Java工程: 2.将JMeter的lib目录下的jar文件添加进此工程的Build Path: 3.创建一个类并实现JavaSamplerClient接口或继承AbstractJavaSamplerClient,并重写: public Arguments getDefaultParameters();设置可用参数及的

jmeter之java代码性能测试

一.环境准备 1.新建一个java工程 2.导入jar包:ApacheJMeter_core.jar     ApacheJMeter_java.jar 这两个jar是使用jmeter最基础的jar,能够让你的代码在jmeter中运行起来,如果在写代码的过程中需要其他的jar,自行导入. 二.写代码前该知道的 1.如果想要让你的代码在jmeter中运行起来,在创建类的时候需要去继承AbstractJavaSamplerClient抽象类或者是实现JavaSamplerClient接口 Abstr

浅说Get请求和Post请求

Web 上最常用的两种 Http 请求就是 Get 请求和 Post 请求了.我们在做 java web 开发时,也总会在 servlet 中通过 doGet 和 doPost 方法来处理请求:更经常地,我们会在 doGet 方法的实现中调用 doPost 方法.尽管做了近两年的 web 开发,我对诸如 Get 请求和 Post 请求的基本概念仍不是十分了解.近日阅读< javascript 高级程序设计>(很长时间没有看书了!),重新整理了一下 Get 请求和 Post 请求的概念,算是读书

jmeter测试java代码

有时候总是要写代码的,不得不说你也得会,这不往下看 java请求了,就的写代码,那么先来实现一个类, package com.company.jemeters; public class Hello { public int sum(int a,int b) { return a+b; } } 实现了一个加法,那么我们去写测试类 这里需要吧jemter 的库添加到lib里面去 package com.company.jemeters; import org.apache.jmeter.confi