databasetestingjmeterthreadgrouploop-counter

JMeter threads run once while loop counter set to 'forever' with constant throughput timer


I have a test plan in JMeter that tests a memSQL db, which seems to be running each thread only once, instead of running forever.

As said, I have tried 1 csv source file for all thread groups. Now I created 3 different csv files and the problem persists. I have tried setting all threads ramp up time for 0, 0.1, 1, 2 and still no luck.

After looking in the summary report I created, I always see the same number of sampels. I have 3 thread groups, each with 80 threads, so I always get 240 samepls. Even if the test lasted for 1, 2, 3 minutes and etc. I tried ending the test with a shutdown, and a stoptest and with both I got the same number.

I want the threads to just keep going, it seems like they do the job only once and then just stop while the test goes on. Does this anything to do with the constant throughput timer? What am I missing here?


Solution

  • TL;DR

    It seems that all the configurations were correct, but the actual number of requests in the constant throughput timer was too low. Also, JMeter tries to set the throughput per minute, so tests should be longer then 1 or 2 minutes with that timer.

    Very silly mistake with a conclusion: Check your throughput value, test for longer periods. Hope this helps anyone else.

    The reason was, that in the server running the non gui version of jmeter I created a shell script to take a number of requests per second wanted for the current test, and insert it into the plan times 60 for the appropriate field in the timer element. Thing is I didn't multiply by 60 and so the throughput was very low. So low that for tests a few minutes long I always got the same sample count.

    If I were to test for longer times I would have seen that more samples are created, but because jmeter delayed threads to simulate a low throughput, I only saw the first iteration.