跳到主要内容

命令选项

apifox run -h

Usage(用法):

apifox run --access-token <value> [options]

apifox run <collection> [options]
提示

通过以下方式之一运行测试场景:

  • 使用 Apifox access token 结合指定测试场景或测试场景目录的 ID
  • 指定 Apifox 测试场景的 URL 或 文件路径

Options(选项):

  --access-token <accessToken>              设置鉴权令牌,通过此令牌结合 -t/-f 命令来指定某个测试场景/测试场景目录运行
-t, --test-scenario <testScenarioId> 指定测试场景 ID,通过 ID 运行相应的测试场景
-f, --test-scenario-folder <folderId> 指定测试场景目录 ID,通过目录 ID 运行相应的测试场景
-r, --reporters [reporters] 指定测试报告类型, 支持 cli, html, json, junit (default: ["cli"])
--out-dir <outDir> 输出测试报告目录,默认为当前目录下的 ./apifox-reports (default: "./apifox-reports")
--out-file <outFile> 输出测试报告文件名,不需要添加后缀,默认格式为 apifox-report-{当前时间戳}-0 (default:"apifox-report-2022-10-25-15-03-08-247-0")
-e, --environment 指定运行环境,本次所有测试场景使用此环境运行
-n, --iteration-count <n> 设置循环次数
-d, --iteration-data <path|testDataId> 设置用例循环的数据 (JSON 或 CSV)
--env-var <key=value> 设置环境变量,使用 key=value 格式。可以设置多个环境变量。例如:--env-var "user=123" --env-var "password=123"
--global-var <key=value> 设置全局变量,使用 key=value 格式。可以设置多个全局变量。例如:--global-var "user=123" --global-var "password=123"
--notification <targetIds> 运行完成后,通知指定对象。使用英文逗号添加多个通知对象 ID
--notification-failed-event <targetIds> 运行完成后,仅失败时通知指定对象。使用英文逗号添加多个通知对象 ID
--external-program-path <path> 指定 [外部程序] 的所处文件路径,默认值为命令当前执行目录
--database-connection <path> 指定 [数据库配置] 的所处文件路径,使用 URL 测试的时候必须指定
--ignore-redirects 阻止 Apifox 自动重定向返回 3XX 状态码的请求
--silent 阻止 Apifox CLI 输出到控制台
--color <value> 开启/关闭控制台彩色输出 (auto|on|off) (default: "auto")
--delay-request [n] 指定请求之间停顿间隔 (毫秒) (default: 0)
--timeout-request [n] 指定接口请求超时时间 (毫秒) (default: 0)
--timeout-script [n] 指定脚本预执行/后执行接口运行超时时间 (毫秒) (default: 0)
-k, --insecure 关闭 SSL 校验
--ssl-client-cert-list <path> 指定客户端证书配置路径 (JSON)
--ssl-client-cert <path> 指定客户端证书路径 (PEM)
--ssl-client-key <path> 指定客户端证书私钥路径
--ssl-client-passphrase <passphrase> 指定客户端证书密码 (for protected key)
--ssl-extra-ca-certs <path> 指定额外受信任的 CA 证书 (PEM)
--upload-report 将本次测试报告总览上传至云端,在 App 中即可查看此测试报告
-b, --bigint 兼容 bigint (default: false)
--verbose 显示所有接口请求的详细信息
--lang <language> 设置 CLI 的语言 (zh|en) (default: "zh")
-h, --help display help for command

apifox run -h

SSL

客户端证书

Apifox CLI 支持传入客户端证书。


使用单个 SSL 客户端证书

  • --ssl-client-cert
    公共客户端证书文件的路径

  • --ssl-client-key
    私有客户端密钥的路径(可选)

  • --ssl-client-passphrase
    用于保护私有客户端密钥的密码(可选)


使用 SSL 客户端证书 配置文件(支持多个证书)

  • --ssl-client-cert-list
    SSL 客户端证书列表配置文件的路径(JSON 格式)。示例如下 ssl-client-cert-list.json
ssl-client-cert-list.json

[
{
"name": "domain1",
"matches": ["https://test.domain1.com/*", "https://www.domain1/*"],
"key": {"src": "./client.domain1.key"},
"cert": {"src": "./client.domain1.crt"},
"passphrase": "changeme"
},
{
"name": "domain2",
"matches": ["https://domain2.com/*"],
"key": {"src": "./client.domain2.key"},
"cert": {"src": "./client.domain2.crt"},
"passphrase": "changeme"
}
]

此选项允许根据 URL 或主机名设置不同的 SSL 客户端证书。此选项优先于 --ssl-client-cert, --ssl-client-key--ssl-client-passphrase 选项。如果列表中的 URL 没有匹配项,这些选项将用作后备选项。

HTTP/2

通过指定参数 --preferred-http-version 可以使 CLI 支持使用特定的协议版本发送请求。


协议版本参数值:

  1. "HTTP/2" - HTTP/2 应用层协议协商,仅 HTTPS 请求支持。
  2. "HTTP/2-with-prior-knowledge" - HTTP/2 先验知识
  3. "HTTP/1" - HTTP/1.1

参数值支持如下配置:

--preferred-http-version="https=HTTP/2,http=HTTP/2-with-prior-knowledge" - 分别为 HTTPS、HTTP 请求设置不同的协议版本

--preferred-http-version="HTTP/1" - 同时为 HTTPS、HTTP 设置相同的协议版本

--preferred-http-version="HTTP/2" - 同时为 HTTPS、HTTP 设置相同的协议版本(不支持的值会自动忽略)