← ClaudeAtlas

load-testinglisted

【压力测试】设计和执行负载测试方案,包含测试场景设计、压测脚本生成、性能指标分析、瓶颈定位。 触发时机: - 用户要求"压力测试"、"性能测试"、"压测" - 上线前需要评估系统容量 - 性能优化需要数据支撑 支持 JMeter/K6/Locust 脚本生成。
afine907/skills · ★ 0 · Testing & QA · score 75
Install: claude install-skill afine907/skills
# Load Testing — 压力测试技能 设计负载测试方案,生成压测脚本,分析性能瓶颈。 ## Goal 设计和执行负载测试方案,包含测试场景设计、压测脚本生成、性能指标分析、瓶颈定位 ## Trigger - 用户要求"压力测试"、"性能测试"、"压测" - 上线前需要评估系统容量 - 性能优化需要数据支撑 ## 工作流程 ``` 需求分析 → 场景设计 → 脚本生成 → 执行监控 → 结果分析 → 瓶颈定位 ``` ## 测试类型 | 类型 | 目标 | 并发数 | 持续时间 | |------|------|--------|----------| | 基准测试 | 建立性能基线 | 1-10 | 5min | | 负载测试 | 验证预期负载 | 预期并发 | 30min | | 压力测试 | 找到系统极限 | 逐步增加 | 30-60min | | 浸泡测试 | 检测内存泄漏 | 预期并发 | 4-24h | | 尖峰测试 | 验证突发流量 | 突发峰值 | 5-10min | ## 测试场景设计 ### 场景模板 ```yaml test_scenario: name: {场景名称} description: {场景描述} # 负载模型 load_model: type: {constant/ramp-up/step/spike} target_vus: {目标虚拟用户数} ramp_up_time: {爬坡时间} hold_time: {持续时间} ramp_down_time: {下降时间} # 测试接口 endpoints: - name: {接口名称} method: {GET/POST/PUT/DELETE} url: {接口地址} headers: Content-Type: application/json Authorization: Bearer ${token} body: | { "field": "${dynamic_value}" } think_time: {思考时间(秒)} weight: {权重(%)} # 断言 assertions: - type: response_time condition: p95 < 500ms - type: error_rate condition: < 1% - type: throughput condition: > 1000 req/s # 测试数据 test_data: source: {csv/api/generated} file: {data.csv} strategy: {sequential/random/unique} ``` ### 常见场景 | 场景 | 描述 | 关注指标 | |------|------|----------| | 秒杀抢购 | 瞬间高并发写入 | TPS、错误率、库存一致性