Test case per tutti i file
Questo articolo descrive i test eseguiti con il toolkit di test del modello per tutti i file JSON (JavaScript Object Notation). Gli esempi includono i nomi di test e i codici esempio che superano o falliscono i test. Per ulteriori informazioni su come eseguire i test o su come eseguire un test specifico, consultare Parametri di test.
Usare la sintassi JSON valida
Nome test: JSONFiles deve essere valido
Questo test verifica che tutti i file JSON contengano una sintassi valida. Ad esempio, azuredeploy.json, azuredeploy.parameters.json o createUiDefinition.json file. Se il test non riesce, verranno visualizzati errori o avvisi per altri test o analisi JSON.
Esempio di file del modello
L'esempio seguente ha esito negativo perché in azuredeploy.json la parentesi graffa iniziale ({
) manca da 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')]"
}
}
}
Il seguente esempio ha esito positivo.
{
"$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')]"
}
}
}
Esempio di file di parametri
L'esempio seguente ha esito negativo perché azuredeploy.parameters.json usa un parametro senza .value
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"location": {
"value":
}
}
}
Il seguente esempio ha esito positivo.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"location": {
"value": "westus"
}
}
}
Esempio di CreateUiDefintion
L'esempio seguente ha esito negativo perché in createUiDefinition.json la parentesi graffa iniziale ({
) non è presente nella outputs
sezione .
{
"$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()]"
}
}
}
Il seguente esempio ha esito positivo.
{
"$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()]"
}
}
}
Passaggi successivi
- Per informazioni sul toolkit di test, consultare Usare il toolkit di test dei modelli di ARM.
- Per i test dei modelli di Resource Manager, vedere Test case per i modelli di Resource Manager
- Per testare i file di parametri, vedere Test case per i file dei parametri.
- Per i test createUiDefinition, vedere Test case per createUiDefinition.json