JMeter - Stop Thread On EOF? Usage Of CSV Data Set Config

Stop Thread On EOF? is parameter of CSV Data Set Config configuration element in apache jmeter. Earlier we learnt about CSV Data Set Config in THIS POST and usage of Recycle On EOF? parameters in THIS POST.  So here we will discuss about Stop Thread On EOF? parameter of CSV Data Set Config and how to use it in your software load test plan.

Usage Of Stop Thread On EOF?
If you set Stop thread on EOF? = True then it will stop threads on EOF if Recycle on EOF is set to False. Example : You have csv file with 5 rows of data and you have set Number of Threads = 1 and Loop Count = 15 in Thread Group then it will run only 5 threads.

Example On Usage Of Stop Thread On EOF
We will use same CSV Data Set Config.jmx software load test example and Test.csv file to see actual usage of Stop Thread On EOF? parameter in CSV Data Set Config. 

Thread group config : Number of threads = 1, Loop Count = 15. (Note : In this example, It will works same for Number of threads = 15, Loop Count = 1).
Test.csv file : 5 data rows.
CSV Data Set Config : Configuration of CSV Data Set Config is as bellow.

For above configuration, It will run only 5 threads from 15 If you run software load test as we have set Recycle on EOF? = False and Stop Thread On EOF? = True. It will force jmeter to stop threads once reach on end of file in csv data file. See bellow given result.

Now if you set Recycle on EOF? = True and Stop Thread On EOF? = False for same software load test then it will allow to execute all 15 threads as shown in bellow image.

This way, Stop Thread On EOF? parameter helps you to configure CSV Data Set Config in your software load test plan.

1 comment:

  1. This did not explain "Stop Thread on EOF" clearly. This is explaining how 'Recycle on EOF' works (which was already explained in your other page). You cannot change both these settings each time you want to show how just the one feature makes a difference in how it's used. A few other blogs and YouTube channels made the same mistake. I finally figured it out on my own using my own code.