Partager via


Cas de test pour les fichiers de paramètres

Cet article décrit les tests qui sont exécutés avec la boîte à outils de test de modèle pour les fichiers de paramètres. Par exemple, un fichier nommé azuredeploy.parameters.json. Les exemples incluent les noms des tests et des exemples de code avec lesquels les tests réussissent ou échouent. Pour plus d’informations sur l’exécution de tests ou sur l’exécution d’un test spécifique, consultez Paramètres de test.

La boîte à outils inclut les cas de test pour les modèles Azure Resource Manager (modèles ARM) et les fichiers de modèles principaux nommés azuredeploy.json ou maintemplate.json.

Utiliser un contentVersion valide

Nom du test : DeploymentParameters doit avoir ContentVersion

contentVersion doit contenir une chaîne au format 1.0.0.0 et utiliser uniquement des nombres.

Dans l’exemple suivant, le test échoue, car contentVersion manque.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#",
  "parameters": {
    "stgAcctName": {
      "value": "demostorage01"
    }
  }
}

Dans l’exemple suivant, le test échoue, parce que contentVersion n’est pas une chaîne.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#",
  "contentVersion": {},
  "parameters": {
    "stgAcctName": {
      "value": "demostorage01"
    }
  }
}

Dans l’exemple suivant, le test réussit.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "stgAcctName": {
      "value": "demostorage01"
    }
  }
}

Le fichier doit inclure des paramètres

Nom du test : DeploymentParameters doit avoir des paramètres

Un fichier de paramètres doit inclure la section parameters.

Dans l’exemple suivant, le test échoue.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#",
  "contentVersion": "1.0.0.0",
}

Dans l’exemple suivant, le test réussit.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "stgAcctName": {
      "value": "demostorage01"
    }
  }
}

Utiliser une version de schéma valide

Nom du test : DeploymentParameters doit avoir un schéma

Le fichier de paramètres doit inclure une version de schéma valide.

Il existe deux versions de schéma valides pour les fichiers de paramètres :

  • https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#
  • https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#

Dans l’exemple suivant, le test échoue.

{
  "$schema": "https://schema.management.azure.com/schemas/2021-01-01/deploymentParameters.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "stgAcctName": {
      "value": "demostorage01"
    }
  }
}

Dans l’exemple suivant, le test réussit.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "stgAcctName": {
      "value": "demostorage01"
    }
  }
}

Les paramètres doivent contenir des valeurs

Nom du test : DeploymentParameters doit avoir une valeur

Un paramètre doit contenir une value ou une reference. Pour les secrets tels qu’un mot de passe, un coffre de clés utilise une reference dans le fichier de paramètres. Pour plus d’informations, consultez l’article Utiliser Azure Key Vault pour transmettre une valeur de paramètre sécurisée pendant le déploiement.

Dans l’exemple suivant, le test échoue, parce que stgAcctName n’a pas de value.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "stgAcctName": {}
  }
}

Dans l’exemple suivant, le test réussit.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "stgAcctName": {
      "value": "demostorage01"
    }
  }
}

Étapes suivantes