用途:在负载下验证系统行为,进行压力测试、识别瓶颈并建立性能基线。
主要能力:支持 k6(JavaScript)与 Locust(Python)两种工具。k6 侧可配置 stages 实现爬坡、稳态与降坡,通过 thresholds 设定阈值,如 http_req_duration: ['p(95)<500'] 与 http_req_failed: ['rate<0.01'];用 check 断言状态码与响应时间。Locust 侧用 HttpUser、task 与 between 定义用户行为、任务权重和等待时间,on_start 可先登录。
测试类型:负载测试(如 vus: 50、duration: '5m')、压力测试(阶梯升到 400 找断点)、尖峰测试(1 秒内从 10 升到 1000)、浸泡测试(50 VU 持续 4h 查内存泄漏)。指标:用 Trend、Counter、Rate 记录响应时间、错误数与成功率。
使用方式:在 CI 中执行 k6 run --out json=results.json tests/load/api.js,再检查 thresholds 是否失败,失败则退出非零。
限制与注意:不要在无保护的情况下测试生产环境;预留预热期;避免不真实的负载曲线;必须设置错误率阈值。相关资料未提供安装命令与具体依赖版本。