パラメーター ファイルのテスト ケース

この記事では、パラメーター ファイルテンプレート テスト ツールキットで実行されるテストについて説明します。 たとえば、azuredeploy.parameters.json という名前のファイルがあります。 これらの例には、テストに合格するか、または不合格になるテスト名とコード サンプルが含まれています。 テストを実行する方法、または特定のテストを実行する方法の詳細については、「テスト パラメーター」を参照してください。

このツールキットには、Azure Resource Manager テンプレート (ARM テンプレート) のテスト ケースと、azuredeploy.json または maintemplate.json という名前のメイン テンプレート ファイルが含まれています。

有効な contentVersion を使用する

テスト名: DeploymentParameters には contentVersion が必要

contentVersion には 1.0.0.0 という形式の文字列が含まれ、かつ数字のみが使用されている必要があります。

次の例は、contentVersion がないため不合格になります。

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

次の例は、contentVersion が文字列ではないため不合格になります。

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

次の例は合格します。

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

ファイルにはパラメーターが含まれている必要がある

テスト名: DeploymentParameters にはパラメーターが必要

パラメーター ファイルには、parameters セクションが含まれている必要があります。

次の例は不合格になります。

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

次の例は合格します。

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

有効なスキーマ バージョンを使用する

テスト名: DeploymentParameters にはスキーマが必要

パラメーター ファイルには、有効なスキーマ バージョンが含まれている必要があります。

パラメーター ファイルの有効なスキーマ バージョンには、次の 2 つがあります。

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

次の例は不合格になります。

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

次の例は合格します。

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

パラメーターには値が含まれている必要がある

テスト名: DeploymentParameters には値が必要

パラメーターには、value または reference が含まれている必要があります。 パスワードなどのシークレットの場合、キー コンテナーは、パラメーター ファイルで reference を使用します。 詳細については、「デプロイ時に Azure Key Vault を使用して、セキュリティで保護されたパラメーター値を渡す」を参照してください

次の例は、stgAcctNamevalue が含まれていないため不合格になります。

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

次の例は合格します。

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

次のステップ