Just consider an admin account:

Using JMeter I can record a script:

goto url -> sign in -> create order
if I create Thread group of 10 this means -> these 10 users will do the same action 

But what I need to do is:

1) 2 users should create order
2) 3 users should view the order status
3) 3 users should download bills
4) 2 users should view some images

For the 4 steps above, I recorded the script but I don't know how to implement it.

If I had different users I could use an if controller based on user name to control which action to perform, but I need to do this with a single user.

How can I have a single user simultaneously perform different actions as part of a JMeter test script?

3 Answers 3


Normally you different groups of users are represented using different Thread Groups so consider splitting your virtual users into separate Thread Groups.

If you need to pass certain values across thread groups (i.e. created order's ID) you can consider using Inter-Thread Communication plugin. The plugin can be installed using JMeter Plugins Manager

JMeter Plugins Manager Inter Thread Communication

  • Thanks ya but, with in single thread group we cant archive this one ah your way of approach is 1) one thread group for creating order 2) another thread group for downloading bills, in a thread group am creating 10 VR user's there's any way to split them ?
    – abhishek s
    Commented Jan 29, 2018 at 11:01

First create each scenario under simple controller. For example : put login hits in simple controller1, Create order in simple controller2, Download bill in simple controller3 etc.

Now you can use throughput controller to divide the user traffic.

  • i created scenario like 1) going to the url 2) sign in process 3) creating order 4) downloading bills, Total 4 simple controller, but if we use throughput controller mean it will be useful in view result tree we can create head node so that it is easy to verify all api's i wont solve my problem ....... this is an admin A/c so some extra features will be available so 1 simple controller to create order's and another simple controller to download bills i need to split the VR user's Eg: 10 Vr user's means 5 of them shoud create order and another 5 of them shoud download bills ..
    – abhishek s
    Commented Jan 29, 2018 at 11:07

I am using similar thing and same use case can be easily achieved by 'Throughput Controller' provided by Jmeter in case when same ThreadGroup needed to be used.

You just need to define your execution criteria in the controller properly. Read more about it here: https://wiki.loadium.com/jmeter-corner/detailed-look-at-throughput-controller-in-jmeter-and-splitting-threads-to-different-requests

  • Welcome to SQA Stack Exchange. You have the start of a good answer here: it would become an excellent answer if you were to edit your question to show how the OP could defined a Throughput Controller to achieve the desired results.
    – Kate Paulk
    Commented Feb 23, 2023 at 13:13
  • Welcome to the community! Links to external resources are encouraged, but please add context around the link so your fellow users will have some idea what it is and why it’s there. Always quote the most relevant part of an important link, in case the external resource is unreachable or goes permanently offline. Links to other websites should always be helpful, but avoid making it necessary to click on them as much as possible.
    – Lee Jensen
    Commented Feb 23, 2023 at 20:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.