我在 locustfile 中有这样的任务:
class Tasks(FastHttpUser):
headers = {'content-type': 'application/json', 'Connection': 'close'}
@task
def task(self):
payload = "some data"
try:
with self.client.post("/endpoint", data=payload, headers=self.headers,
name="request", catch_response=True) as response:
result = json.loads(response.content)
if len(result["result"]) == 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}')
我预计如果响应不会通过语句或者会有一些意外的答案,这个响应将被标记为失败并作为失败添加到统计中,但它没有发生,我只在日志中看到错误。这是使用失败属性的正确方法还是如果我想检查响应的内容最好使用不同的东西?