用于在需要执行接口测试、API测试、性能测试、负载测试、压力测试、HTTP测试等时调用。触发词:接口测试、API测试、性能测试、负载测试、压力测试、HTTP测试。
通过 basjoofan test [OPTIONS] [NAME] 来运行测试脚本。
参数说明必需默认值--tasks, -t并发数量否1--duration, -d测试时长(秒)或分钟(例如:60s, 1m)否---number, -n测试次数否1--path, -p测试脚本路径否当前路径--record, -r是否记录测试结果否---stat, -s是否输出统计信息否false
text
用户想运行测试脚本
├─ 接口测试 → basjoofan test name 测试方法名为name的接口测试
├─ 性能测试 → basjoofan test name -t 100 -d 1m 测试方法名为name的接口测试,并发数量为100,测试时长为1分钟
让我们开始一个简单的接口测试,测试方法名为get,这是一个GET请求。
bash
let host = "httpbin.org";
rq get`
GET https://{host}/get
`[status == 200]
test get {
let response = get->;
response.status
}
这个脚本保存为.fan为后缀名的文件,例如get.fan。 如果用户想运行测试脚本 ├─ 接口测试 → basjoofan test get 测试方法名为get的接口测试 ├─ 性能测试 → basjoofan test get -t 100 -d 1m -s 测试方法名为get的接口测试,并发数量为100,测试时长为1分钟,输出统计信息
这是一个POST请求
bash
let host = "httpbin.org";
rq post`
POST https://{host}/post
`[status == 200]
test post {
let response = post->;
response.status
}
这是一个POST请求,请求体为application/x-www-form-urlencoded格式。
bash
let host = "httpbin.org";
rq post`
POST https://{host}/post
Content-Type: application/x-www-form-urlencoded
key: value
`[status == 200]
test post {
let response = post->;
response.status
}
这是一个POST请求,请求体为multipart/form-data格式。
bash
let host = "httpbin.org";
rq post`
POST https://{host}/post
Content-Type: multipart/form-data
key: value
file: @path/to/file
`[status == 200]
test post {
let response = post->;
response.status
}
这是一个POST请求,请求体为application/json格式。
bash
let host = "httpbin.org";
rq post`
POST https://{host}/post
Content-Type: application/json
{
"name": "Gauss",
"age": 6,
"address": {
"street": "19 Hear Sea Street",
"city": "DaLian"
},
"phones": [
"+86 13098767890",
"+86 15876567890"
]
}
`[status == 200]
test post {
let response = post->;
response.status
}