Steady, realistic traffic to validate everyday performance.
const at the top of the script) and optional CSV files.Variables (inlined into requests)
CSV data files
No CSV files declared. Add one if your test reads tabular data via SharedArray.
VUs over time
import http from 'k6/http';
import { check, sleep } from 'k6';
// --- Generated k6 script. URLs, headers, and payloads are inlined. ---
export const options = {
stages: [
{ duration: '2m', target: 10 },
{ duration: '3m', target: 50 },
{ duration: '5m', target: 50 },
{ duration: '5m', target: 100 },
{ duration: '10m', target: 100 },
{ duration: '5m', target: 0 },
],
thresholds: {
http_req_failed: ['rate<0.01'],
http_req_duration: ['p(95)<500'],
checks: ['rate>0.95'],
},
};
export default function () {
// 1. GET https://example.com/
let res = http.get('https://example.com/');
check(res, {
'Status code is 200': (r) => res.status === 200,
'Response time < 500ms': (r) => res.timings.duration < 500,
'Response body contains "success"': (r) => res.body && res.body.includes("success"),
});
sleep(1);
// 2. POST https://example.com/api/login
res = http.post('https://example.com/api/login', '{\n "username": "[email protected]",\n "password": "password123"\n}');
check(res, {
'Status code is 200': (r) => res.status === 200,
'Response time < 500ms': (r) => res.timings.duration < 500,
'Response body contains "success"': (r) => res.body && res.body.includes("success"),
});
sleep(1);
// 3. GET https://example.com/api/users
res = http.get('https://example.com/api/users', { headers: {
'Authorization': 'Bearer your_token_here',
} });
check(res, {
'Status code is 200': (r) => res.status === 200,
'Response time < 500ms': (r) => res.timings.duration < 500,
'Response body contains "success"': (r) => res.body && res.body.includes("success"),
});
sleep(1);
// 4. POST https://example.com/api/users
res = http.post('https://example.com/api/users', '{\n "name": "Alice"\n}', { headers: {
'Authorization': 'Bearer your_token_here',
} });
check(res, {
'Status code is 200': (r) => res.status === 200,
'Response time < 500ms': (r) => res.timings.duration < 500,
'Response body contains "success"': (r) => res.body && res.body.includes("success"),
});
sleep(1);
}
什么是k6 负载测试脚本生成器?
根据场景、阶段、HTTP 请求、检查、变量、数据文件、阈值和 sleep 设置生成可审查的 k6 JavaScript 起始脚本。 Base URL、load/stress/spike/soak/smoke 场景、阶段或 VU、请求、检查、变量、可选 cURL 导入、CSV、阈值和节奏。 可下载的 k6 JavaScript 文件,包含配置的场景、请求、检查、SharedArray CSV、阈值和 sleep。
打开工具
这个工具能做什么
- 输入: Base URL、load/stress/spike/soak/smoke 场景、阶段或 VU、请求、检查、变量、可选 cURL 导入、CSV、阈值和节奏。
- 设置与处理: 场景模板、阶段/VU、请求构建、cURL 导入、检查、变量、SharedArray CSV、失败率/p95/check 阈值、sleep、预览与下载。
- 输出: 可下载的 k6 JavaScript 文件,包含配置的场景、请求、检查、SharedArray CSV、阈值和 sleep。
使用方法
- 添加输入。 Base URL、load/stress/spike/soak/smoke 场景、阶段或 VU、请求、检查、变量、可选 cURL 导入、CSV、阈值和节奏。
- 检查设置。 场景模板、阶段/VU、请求构建、cURL 导入、检查、变量、SharedArray CSV、失败率/p95/check 阈值、sleep、预览与下载。
- 生成、核对并导出结果。 可下载的 k6 JavaScript 文件,包含配置的场景、请求、检查、SharedArray CSV、阈值和 sleep。
主要功能
- 输入: Base URL、load/stress/spike/soak/smoke 场景、阶段或 VU、请求、检查、变量、可选 cURL 导入、CSV、阈值和节奏。
- 设置与处理: 场景模板、阶段/VU、请求构建、cURL 导入、检查、变量、SharedArray CSV、失败率/p95/check 阈值、sleep、预览与下载。
- 输出: 可下载的 k6 JavaScript 文件,包含配置的场景、请求、检查、SharedArray CSV、阈值和 sleep。
适用场景
- 根据场景、阶段、HTTP 请求、检查、变量、数据文件、阈值和 sleep 设置生成可审查的 k6 JavaScript 起始脚本。
- 适合需要以下输出或诊断结果时使用:可下载的 k6 JavaScript 文件,包含配置的场景、请求、检查、SharedArray CSV、阈值和 sleep。
- 可放在下一项已确认的流程步骤之前:代码审查、在获授权非生产环境做 smoke run,并在监控下逐步升压。
限制与安全说明
- 页面只生成代码,不执行负载测试。 运行前必须审查认证、数据关联、环境变量、请求正确性、到达模型、阈值、setup/teardown、k6 版本与目标授权。
故障排查
- 从一条已获授权的请求和最小场景开始;在真实项目中确认目标工具版本、语法、import/dependency 与数据引用。
- 把凭据移到环境变量或 secret management,编译或 lint 生成文件,再在升压前执行低负载 smoke test。
- 页面只生成代码,不执行负载测试。 运行前必须审查认证、数据关联、环境变量、请求正确性、到达模型、阈值、setup/teardown、k6 版本与目标授权。
常见问题
什么是k6 负载测试脚本生成器?
根据场景、阶段、HTTP 请求、检查、变量、数据文件、阈值和 sleep 设置生成可审查的 k6 JavaScript 起始脚本。
如何使用k6 负载测试脚本生成器?
添加符合要求的输入,检查页面设置,并在复制或下载前核对结果。 预期输出:可下载的 k6 JavaScript 文件,包含配置的场景、请求、检查、SharedArray CSV、阈值和 sleep。
支持哪些输入?
Base URL、load/stress/spike/soak/smoke 场景、阶段或 VU、请求、检查、变量、可选 cURL 导入、CSV、阈值和节奏。
会生成什么输出?
可下载的 k6 JavaScript 文件,包含配置的场景、请求、检查、SharedArray CSV、阈值和 sleep。
有哪些限制?
页面只生成代码,不执行负载测试。 运行前必须审查认证、数据关联、环境变量、请求正确性、到达模型、阈值、setup/teardown、k6 版本与目标授权。
相关 AppKiro 工具
先用已验证的示例开始
先生成最小脚本并在目标项目中审查;任何受控升压前,只能对已获授权的非生产系统运行。
打开工具