

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 测试
<a name="cfn-guard-test"></a>

根据 JSON 或 YAML 格式的 Guard 单元测试文件验证 AWS CloudFormation Guard 规则文件，以确定各个规则是否成功。

## 语法
<a name="cfn-guard-test-synopsis"></a>

```
cfn-guard test 
--rules-file <value>
--test-data <value>
```

## 参数
<a name="cfn-guard-test-flags"></a>

`-a`, `--alphabetical`

在目录中按字母顺序排序。

`-h`, `--help`

打印帮助信息。

`-m`, `--last-modified`

按目录内上次修改时间排序

`-V`, `--version`

打印版本信息。

`-v`, `--verbose`

增加输出详细程度。可以多次指定。

详细输出遵循 Guard 规则文件的结构。规则文件中的每个块都是详细输出中的一个块。最上面的方块是每条规则。如果存在违反该规则的`when`条件，则它们会显示为同级条件块。

## 选项
<a name="cfn-guard-test-options"></a>

`-d`, `--dir`

提供规则的根目录。

`-o`, `--output-format`

指定应以何种格式显示输出。

*默认值*：`single-line-summary`

*允许的值*：`json` \| `yaml` \| `single-line-summary` \| `junit`

`-r`, `--rules-file`

提供规则文件的名称。

`-t`, `--test-data`

为 JSON 或 YAML 格式的数据文件提供文件或目录的名称。

## 示例
<a name="cfn-guard-test-examples"></a>

```
cfn-guard test --rules-file {{rules.guard}} --test-data {{example.json}}
```

## Output
<a name="cfn-guard-test-output"></a>

```
{{PASS|FAIL}} Expected Rule = {{rule_name}}, Status = {{SKIP|FAIL|PASS}}, Got Status = {{SKIP|FAIL|PASS}}
```

## 另请参阅
<a name="cfn-guard-test-see-also"></a>

[测试防护规则](testing-rules.md)