如何通过JMeter的Java请求采样器中的runTest方法返回多个结果?

时间:2014-05-20 07:40:46

标签: java performance jmeter

大家好我是Jmeter的新手,我有一个关于覆盖自定义java请求采样器中的runTest方法的问题。我想获得逻辑中所有事务的saparate持续时间,但我只能看到result.sampleStart()和result.sampleEnd()方法之间的一个持续时间,因为该方法只能返回一个结果。这里的任何朋友都有关于如何获得单独持续时间的任何建议?这是我自定义Java采样器的代码:

package JMeterClient;


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

/*  @Override    public Arguments getDefaultParameters() { 
    Arguments defaultParameters = new Arguments();
    defaultParameters.addArgument("", ""); 
    defaultParameters.addArgument("", "");
    defaultParameters.addArgument("", "");
    return defaultParameters;     } */

    @Override
public SampleResult runTest(JavaSamplerContext arg0) {
         SampleResult result = new SampleResult();

         boolean success = true;

         result.sampleStart();

         SampleMethods methods= new SampleMethods();
         result.sampleStart();
         methods.randomNumberGenerator();
         result.sampleEnd();
         result.getEndTime();
         methods.reverseString();
         methods.run();

         result.sampleEnd();

         result.setSuccessful(success);

         return result;


}


}

1 个答案:

答案 0 :(得分:0)

据我了解您的问题,您尝试构建一个结果树,您将拥有一个父样本和一些子样本。如果是这样,根据How to use BeanShell指南,您应该查看以下方法:

SampleResult.addSubResult()

根据说明,

  

<强> addSubResult

     

public void addSubResult (SampleResult subResult)

     

添加子结果并调整父字节数和结束时间。

     

参数: subResult -