You may have noticed that 200 response code is marked as failed in your Errors report.
This is not a mistake.
How JMeter calculates whether a response is an error or not
BlazeMeter saves the Sample.jtl files in an XML format, as this is the correct way to store successful HTTP requests.
To better acquaint yourselves, here are a few examples of some 200 OK HTTP samples taken from a BlazeMeter sample.jtl file:
A Successful HTTP 200 OK HTTP Request
Notice the “s=true” which is means its successful (the s=true flag, followed by the rc=200 assures us that the entire HTTP request was successfully completed).
Above, you can also see an assertion to this HTTP request which did not fail.
Now, lets look at this HTTP request which is also a 200 OK:
You can see that the response is still 200 OK but, we had an assertion which failed the response and you can also see the description/failure message of the assertion.
A common scenario for these types of errors is a failed login, because although the request was processed successfully (thats why we got 200 OK) the credentials were false, and thats why the assertion failed the request.
Another scenario will be a “Duration Assertion”. If we won’t accept a response time over 5s of a certain page - then we should apply a “Duration Assertion” to fail the request.
Let’s look at this HTTP request:
We can see it’s a 200 OK (rc=200), there are no assertions BUT, the successful flag is still false (s=false) - say what?
At this example, JMeter could not retrieve the jquery.js element and got 404 for it.
How do I view my test’s sample.jtl file ?
Want to learn more about BlazeMeter test results? You'll want to view our on-demand recording, Load Test Like a Pro