title: Locust FastResponse's failure attribute doesn't set request as failed in report
body: <p>I have such task in locustfile:</p>
  <pre><code>class Tasks(FastHttpUser):
      headers = {'content-type': 'application/json', 'Connection': 'close'}
  
      @task
      def task(self):
          payload = &quot;some data&quot;
          try:
              with self.client.post(&quot;/endpoint&quot;, data=payload, headers=self.headers,
                                    name=&quot;request&quot;, catch_response=True) as response:
                  result = json.loads(response.content)
                  if len(result[&quot;result&quot;]) == 0:
                      response.failure(result)
                      log.error(result)
          except (TypeError, JSONDecodeError) as err:
              response.failure(response.text)
              log.error(f'{type(err).__name__} because of : {response.status_code} - {response.text}')
  </code></pre>
  <p>I expected that if response will not pass statement or there will be some unexpected answer, this response will be marked as failed and be added to statistic as failure, but it isn't happen, I see only error in logs.
  Is it the right way to use failure attribute or it's better to use something different if I want to check response's content?</p>