0
votes

Jmeter version 4.0

Working case: Created performance tests on application API's using jmeter. I have 50 unique users with zero rampup time and ran the script for 50 users, execution went successfully and no assertions failed.

Not working case: Now I ran the same script for 15 mins duration through jmeter scheduler where start delay is 0. In this case script is failing at login with error "CRPF validation" for some users.I also increased start delay and rampup time but no luck.

I am not sure why this failing as i am capturing the user token correctly and passing to the login api. It is working fine in first case but always failing second case.

Drupal controls login.

Any help is greatly appreciated, as i cannot run the test for certain duration.

Thanks, Ravindra

1

1 Answers

0
votes

Most probably your application gets overloaded in 2nd case as:

  1. When you have only 1 iteration in Thread Group the actual number of concurrent users might be less than 50 as it might be the case that some threads (virtual users) have already finished executing samplers and some have not even yet been started. You can double check actual concurrency using i.e. Active Threads Over Time listener or equivalent chart from the JMeter Reporting Dashboard. See JMeter Test Results: Why the Actual Users Number is Lower than Expected article for more detailed explanation if needed.
  2. When you run your test for 15 minutes all your 50 users are online at the same time therefore it might break your application. You can temporarily enable saving response data for debugging purposes by adding the next 2 lines to user.properties file:

    jmeter.save.saveservice.output_format=csv
    jmeter.save.saveservice.response_data=true
    

    and inspect response details for failing samplers using View Results Tree listener, it can happen that the system doesn't return CSRF token under the load.