jmeter 之java请求

一:背景

利用jmeter进行压测,对于一些sdk的压测,对于jmeter是无法支持,需要用户利用java请求来达到需求目的。

二:方法

    1.对于用户实现的java请求,必须要继承AbstractJavaSamplerClient

    2.关于继续AbstractJavaSamplerClient类中方法讲解

        2.1 public Arguments getDefaultParameters()此方法的目的是从jmeter的操作界面上设置用户的参数,在jmeter上对应的位置为:


    其中方法中首先建立Arguments params=new Arguments();一个对象,然后用params.addArgument(对应jmeter界面上显示的名称一列,对应   jmeter界面上显示的值一列)。其中对应jmeter界面上显示的值这列的value是可以为空,这列代表对应name的默认值。代码如下


    2.2 public void setupTest(JavaSamplerContext context)方法主要是做执行前的初始化动作,每个线程测试前进行启动一次,例如获取界面的参数和一些初始化的动作。如下面代码中的参数获取和样例结果对象的初始化。


    2.3 public SampleResult runTest(JavaSamplerContext arg0)方法是处理业务的核心代码。对于业务的处理都是在该方法中进行。其中计算一个请求的时间段,通过sampleResult中的sampleStart到sampleEnd作为计算响应时间。其中对于如果想jmeter存在响应结果,则需要调用sampleResult.setResponseCode()方法输出结果。对于最终的线程结果是否正确通过SampleResult的setSuccessful(Boolean flag)来决定

    2.4 public void teardownTest (JavaSamplerContext context)方法是测试结束时调用,只执行一次。

备注:以上四个方法的顺序为:getDefaultParameters()、setupTest(JavaSamplerContext context)、runTest(JavaSamplerContext arg0)、teardownTest(JavaSamplerContext arg0)。其中runTest是必实现的。setupTest和tearDownTest都是一个线程执行一次 ,对于有参数化的变量请勿在setUpTest中实现。

3.代码完成后,以jar包导入到jmeter安装包的lib\ext目录下。

4.打开jmeter,选择java请求,选择对应的类,进行参数化。具体如下


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容