Casos de teste para todos os arquivos
Este artigo descreve os testes que são executados com o kit de ferramentas de teste de modelo para todos os arquivos JSON (JavaScript Object Notation). Os exemplos incluem os nomes de teste e exemplos de código que passam ou falham nos testes. Para obter mais informações sobre como executar testes ou como executar um teste específico, consulte Parâmetros de teste.
Usar sintaxe JSON válida
Nome do teste: JSONFiles deve ser válido
Este teste verifica se todos os arquivos JSON contêm sintaxe válida. Por exemplo, azuredeploy.json, azuredeploy.parameters.json ou createUiDefinition.json arquivos. Se o teste falhar, você verá falhas ou avisos para outros testes, ou análise JSON.
Exemplo de arquivo de modelo
O exemplo a seguir falha porque em azuredeploy.json a chave principal ({
) está ausente de parameters
, comboBox
e location
.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters":
"comboBox":
"type": "string"
},
"location":
"type": "string"
}
},
"resources": [],
"outputs": {
"comboBox": {
"type": "string",
"value": "[parameters('comboBox')]"
},
"location": {
"type": "string",
"value": "[parameters('location')]"
}
}
}
O exemplo a seguir passa.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"comboBox": {
"type": "string"
},
"location": {
"type": "string"
}
},
"resources": [],
"outputs": {
"comboBox": {
"type": "string",
"value": "[parameters('comboBox')]"
},
"location": {
"type": "string",
"value": "[parameters('location')]"
}
}
}
Exemplo de arquivo de parâmetro
O exemplo a seguir falha porque azuredeploy.parameters.json usa um parâmetro sem um value
arquivo .
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"location": {
"value":
}
}
}
O exemplo a seguir passa.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"location": {
"value": "westus"
}
}
}
Exemplo de CreateUiDefinition
O exemplo a seguir falha porque em createUiDefinition.json a chave principal ({
) está ausente da outputs
seção.
{
"$schema": "https://schema.management.azure.com/schemas/0.1.2-preview/CreateUIDefinition.MultiVm.json#",
"handler": "Microsoft.Azure.CreateUIDef",
"version": "0.1.2-preview",
"parameters": {
"basics": [
{
"name": "comboBox",
"type": "Microsoft.Common.DropDown",
"label": "Example drop down",
"toolTip": "This is a tool tip"
}
],
"steps": [],
"outputs":
"comboBox": "[basics('comboBox')]",
"location": "[location()]"
}
}
}
O exemplo a seguir passa.
{
"$schema": "https://schema.management.azure.com/schemas/0.1.2-preview/CreateUIDefinition.MultiVm.json#",
"handler": "Microsoft.Azure.CreateUIDef",
"version": "0.1.2-preview",
"parameters": {
"basics": [
{
"name": "comboBox",
"type": "Microsoft.Common.DropDown",
"label": "Example drop down",
"toolTip": "This is a tool tip"
}
],
"steps": [],
"outputs": {
"comboBox": "[basics('comboBox')]",
"location": "[location()]"
}
}
}
Próximos passos
- Para saber mais sobre o kit de ferramentas de teste, consulte Usar kit de ferramentas de teste de modelo ARM.
- Para testes de modelo ARM, consulte Casos de teste para modelos ARM
- Para testar arquivos de parâmetro, consulte Casos de teste para arquivos de parâmetro.
- Para testes createUiDefinition, consulte Casos de teste para createUiDefinition.json