Teste de casos para ficheiros de parâmetros

Este artigo descreve os testes que são executados com o kit de ferramentas de teste do modelo para ficheiros de parâmetros. Por exemplo, um ficheiro chamado azuredeploy.parameters.json. Os exemplos incluem os nomes de teste e as amostras de código que passam ou falham nos testes. Para obter mais informações sobre como realizar testes ou como executar um teste específico, consulte os parâmetros do teste.

O conjunto de ferramentas inclui caixas de teste para modelos de Resource Manager Azure (modelos ARM) e os ficheiros principais do modelo nomeados azuredeploy.json ou maintemplate.json.

Utilizar conteúdo válidoVerssion

Nome do teste: Os separadores de implantação devem ter aversão de conteúdo

O contentVersion deve conter uma corda no formato 1.0.0.0 e apenas usar números.

O exemplo a seguir falha porque o contentVersion que falta.

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

O exemplo a seguir falha porque contentVersion não é uma corda.

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

O exemplo que se segue passa.

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

O ficheiro deve incluir parâmetros

Nome do teste: Os parâmetros de implantação devem ter parâmetros

Um ficheiro de parâmetro deve incluir a parameters secção.

O exemplo que se segue falha.

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

O exemplo que se segue passa.

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

Use a versão de esquema válido

Nome do teste: Os separadores de implantação devem ter schema

O ficheiro de parâmetros deve incluir uma versão de esquema válido.

Existem duas versões de esquema válidas para ficheiros de parâmetros:

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

O exemplo que se segue falha.

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

O exemplo que se segue passa.

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

Os parâmetros devem conter valores

Nome do teste: Os separadores de implantação devem ter valor

Um parâmetro deve conter um value ou um reference. Para segredos como uma palavra-passe, um cofre de chaves usa um reference no ficheiro de parâmetros. Para obter mais informações, consulte Use Azure Key Vault para passar o valor do parâmetro seguro durante a implementação.

O exemplo que se segue falha porque stgAcctName não tem um value.

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

O exemplo que se segue passa.

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

Passos seguintes