YAML 配置中的变量赋值
您可以使用 CLI 工具在 YAML 配置文件中定义变量。 这些变量用于配置工具的各个方面。
您可以通过以下三种方式配置 YAML 文件:
- 使用相同的 YAML 文件。
- 使用环境变量
- 使用外部配置 YAML 文件。
注: 变量必须括在双花括号中。 例如,
"{{configs.base_url}}" 或 "{{paths.basePath}}"。 这些占位符的格式为 "{{...}}" ,根据优先级的不同,会被源 YAML 文件、环境变量或外部配置文件中的相应值替换。变量分配的优先顺序层次结构如下所示:
- 外部配置 YAML 文件 (最高优先级)
- 环境变量
- 同一 YAML 文件中设置的配置 (最低优先级)
1. 同一 YAML 文件中的配置集
您可以从同一个 YAML 文件中为变量赋值。 为此,必须按以下方式构造 YAML 文件:
configs:
basePath: ...paths:
- basePath: ...
此处, configs 键用于定义变量,例如 basePath 和 paths。 这些变量可在整个 YAML 文件中用于配置工具。
2. 环境变量
使用环境变量可以覆盖 YAML 文件中配置的变量值。 当环境变量与 YAML 文件中定义的变量共享相同的名称时, YAML 变量的值将替换为相应的环境变量。 这提供了一种在外部定制配置的方法。
例如,如果在 YAML 文件中将名为 base_url 的变量定义为 "{{configs.base_url}}",并且其值将替换为名为 base_url的环境变量。 YAML 文件中 base_url 的值被 base_url 环境变量的值覆盖。
3. 外部配置 YAML 文件
CLI 工具通过外部配置文件支持最高级别的配置优先顺序。 要使用外部配置文件,必须在使用 CLI 工具时使用 --config-file 或 -c 标志指定其文件路径。 外部配置文件中定义的任何变量都会取代主 YAML 文件或环境变量中定义的变量。
例如,考虑一个外部配置文件 config.yaml ,其内容如下:
external_config:
base_url: https://example.comapi_key: your-api-key
当使用 --config-file=config.yaml 标志运行 CLI 工具时,在 config.yaml 文件中定义的变量将取代主 YAML 文件或环境变量中的相应变量。
有关如何将测试定义为 YAML 文件的更多信息,请参阅 测试定义语法。