Jmeter Test Plan Fragmentation

First, split you test plans by functional components. For instance have one jmx for login-logout flow, another one for website browsing, registration process, ... you get the idea. Check out Test Fragment and Include Controller Components. Put one Test Fragment in your frag jmx file, and include it from your main test plan using Include Controller. Make sure your user.dir is set correctly on remote servers. It will be use to determine full path of your jmx file.

Next, design your test profile using your fragments. Busy weekend can be all about login-logout and website browsing, where a test before massive marketing campaign will concentrate on registration process.


Now the trick is in Gaussian Random Timer and all kind of Logic Controllers. In your main test plan, simply include test fragments and add some Gaussina Random Timers. That will allow you to slow down whole frag.

"And so what?" you might ask! But the trick is in the values you put in your Timers. Instead of adding boring integers, lets put an user property with some reasonable default values.

That is how it can look:

Deviation (in milliseconds): ${__P(login.rsleep,1000)}
Constant Delay Offset (in milliseconds): ${__P(login.sleep,2000)}

If you are using endless loops in your farg, include your Gaussian Timer inside that loop. Read more about how Jmeter applies Timers.