حالات الاختبار لجميع الملفات

توضح هذه المقالة الاختبارات التي يتم تشغيلها باستخدام مجموعة أدوات اختبار القالب لجميع ملفات JavaScript Object Notation (JSON). تتضمن الأمثلة أسماء الاختبار ونماذج التعليمات البرمجية التي تجتاز أو تفشل في الاختبارات. لمزيدٍ من المعلومات حول كيفية إجراء الاختبارات أو كيفية إجراء اختبار معين، راجع Test parameters.

استخدام بناء جملة JSON صالح

اسم الاختبار: يجب أن تكون ملفات JSON صالحة

يتحقق هذا الاختبار من أن جميع ملفات JSON تحتوي على بناء جملة صالح. على سبيل المثال، ملفات azuredeploy.json وazuredeploy.parameters.json وcreateUiDefinition.json. إذا فشل الاختبار، سترى حالات الفشل أو تحذيرات لاختبارات أخرى، أو تحليل JSON.

مثال ملف قالب

يفشل المثال التالي لأنه في azuredeploy.json القوس المعقوص الأمامي ({) مفقود من parameters وcomboBox و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')]"
    }
  }
}

مر المثال التالي.

{
  "$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')]"
    }
  }
}

مثال على ملف المعلمة

يفشل المثال التالي لأن azuredeploy.parameters.json يستخدم معلمة دون value.

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

مر المثال التالي.

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

مثال على CreateUiDefintion

يفشل المثال التالي لأنه في createUiDefinition.json القوس المعقوص الأمامي ({) مفقود من القسم outputs.

{
  "$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()]"
    }
  }
}

مر المثال التالي.

{
  "$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()]"
    }
  }
}

الخطوات التالية