I’m trying to write a custom JMeter module, that will run a Java method that I 
use for Server Setup and returns Map<String,String> as configuration properties 
that can be used in sampling.

At the moment I am slightly unsure of what TestElement I should be extending or 
implementing in order to achieve this, given that it seems to sit somewhere 
between a PreProcessor and ConfigTestElement, in that it is both setting up 
pre-conditions for the test and then providing these as configuration 
parameters. 

After looking at the example in jmeter-plugins for csv config element I wrote a 
class which was little more than

class CreateMyServerConfig extends Arguments {
    @Override
    public Map<String, String> getArgumentsAsMap() {
        return ServerInstance.getServerInstance().getPropertiesAsMap();
    }
}

Where getServerInstance would first generate a VM Instance and later just 
provide a reference to the one created. When I tried to run a test plan with it 
in the code never appeared to be executed, and I never really knew what to 
expect. And whether/when this code might be called (particularly as I only 
really want it run once).

I was hoping that someone might be able to tell me which path to follow, 
whether I’m barking up the wrong tree and which resources might be helpful. I 
have looked at https://jmeter.apache.org/extending/jmeter_tutorial.pdf, have 
seen various information relating to building custom samplers, and have even 
used the Java Request Sampler in the past, however this has me completely 
stumped.

Alternatively a way to deal with JMeter’s configuration such that I could embed 
JMeter in a jar and load the config from classpath would allow me to run the 
code manually before starting JMeter from within Java.

Thanks,

Sam.

Reply via email to