做网站回答,聊网站推广,镇江峻程网络科技有限公司,虚拟空间wordpress固定链接404背景#xff1a; 使用locust进行压测的时候#xff0c;服务器响应已经异常了#xff0c;但是从UI页面上看到的还是正常的响应。直至服务完全挂掉#xff0c;才会出现异常信息。 locust认为HTTP响应代码是OK#xff08;400#xff09;是成功的。实际服务的响应代码是2…背景 使用locust进行压测的时候服务器响应已经异常了但是从UI页面上看到的还是正常的响应。直至服务完全挂掉才会出现异常信息。 locust认为HTTP响应代码是OK400是成功的。实际服务的响应代码是200时有些服务响应的内容异常了。因此需要根据响应内容自定义失败更方便的通过图表数据判断压测结果。 在接口测试时我们一般会使用assert进行判断。基于locust对失败判断逻辑不会将异常响应做为失败的响应。
自定义失败响应
关键代码 设置响应 catch_responseTrue自定义异常响应 response.failure()
示例代码
import os
from logging import getLoggerfrom locust import HttpUser
from locust import TaskSet
from locust import events
from locust import task
from locust.log import setup_loggingsetup_logging(INFO, None)
logger getLogger(os.path.basename(__file__))class Behavior(TaskSet):def on_start(self):logger.info(开始访问活动)taskdef index(self):with self.client.get(/, catch_responseTrue) as response:json_data response.json()if json_data[code] ! 1:response.failure(f自定义响应失败 code 1)assert json_data[code], f响应异常信息 code 1def on_stop(self):logger.info(结束访问活动)class MyUser(HttpUser):host https://docs.locust.iotasks [Behavior]def on_start(self):logger.info(用户开始行动)def on_stop(self):logger.info(用户结束行动)