I need to do load testing on in memory databases.
I want to use JMeter and am under the impression I need to write a class that implements JavaSamplerClient.
Your custom class needs either implement JavaSamplerClient or to extend AbstractSamplerClient.
The absolute minimum is runTest() method implementation.
I'd recommend to look into sources for existing JavaTest and SleepTest Java Request samplers:
Sources are available from JMeter download page
Or there is a couple of guides which have example of simple working Java Requests.
See
After compiling your classes package it to .jar and drop to /lib/ext folder of your JMeter installation. Your class should be available from Java Request drop down.
Hope this helps.
Dmitri and Imen's answers are correct.
Here is a working example project.
It uses Gradle and includes instructions on how to build and execute it. It should be a good reference point.
https://github.com/dgroomes/jmeter-playground
Also, here is the official JMeter documentation on making your custom plugin available in the JMeter tool: https://jmeter.apache.org/usermanual/get-started.html#classpath.
To use Java Request in JMeter you must create a Java class that inherits from JavaSamplerClient
.
To do that, you must download two jar files and add them to classpath if you are working with Eclipse.
This two jar files are ApacheJMeter_core.jar
and ApacheJMeter_java.jar
An your class will look like that:
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 javaRequest extends AbstractJavaSamplerClient {
@Override
public void setupTest(JavaSamplerContext context){
// TODO Auto-generated method stub
super.setupTest(context);
}
@Override
public Arguments getDefaultParameters() {
// TODO Auto-generated method stub
}
@Override
public SampleResult runTest(JavaSamplerContext arg0) {
// TODO Auto-generated method stub
SampleResult result = new SampleResult();
boolean success = true;
result.sampleStart();
// Write your test code here.
//
result.sampleEnd();
result.setSuccessful(success);
return result;
}
@Override
public void teardownTest(JavaSamplerContext context){
// TODO Auto-generated method stub
driver.quit();
String verificationErrorString = verificationErrors.toString();
if (!"".equals(verificationErrorString)) {
fail(verificationErrorString);
System.out.println(verificationErrorString);
}
super.teardownTest(context);
}
}
For more informations you can visit this link http://www.javacodegeeks.com/2012/05/apache-jmeter-load-test-whatever-you.html/comment-page-1/#comment-8288 and this page too How to use CSV Data Set with junit request test in jmeter