إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
تعرف على كيفية تكوين اختبار التحميل في Azure Load Testing باستخدام YAML. يمكنك استخدام ملف YAML لتكوين الاختبار لإنشاء اختبارات التحميل وتشغيلها من سير عمل التكامل المستمر والتسليم المستمر (CI/CD).
بناء جملة اختبار التحميل YAML
يستخدم تكوين اختبار التحميل المفاتيح التالية:
| Key | Type | مطلوبة | القيمة الافتراضية | Description |
|---|---|---|---|---|
version |
string | نعم | تحميل إصدار مواصفات الاختبار. القيمة الوحيدة المدعومة هي v0.1. |
|
testId |
string | نعم | معرف فريد لاختبار التحميل. يجب أن تتراوح القيمة بين حرفين و50 حرفا ([a-z0-9_-]). بالنسبة لاختبار موجود، يمكنك الحصول على testId من صفحة تفاصيل الاختبار في مدخل Microsoft Azure. |
|
testName |
string | N |
مهمل . معرف فريد لاختبار التحميل. يتم استبدال هذا الإعداد ب testId. لا يزال بإمكانك تشغيل الاختبارات الموجودة مع حقل testName. |
|
displayName |
string | N | عرض اسم الاختبار. تظهر هذه القيمة في قائمة الاختبارات في مدخل Microsoft Azure. إذا لم يتم توفيره، يتم استخدام testId كاسم العرض. |
|
description |
string | N | وصف مختصر للاختبار. يبلغ الحد الأقصى لطول القيمة 100 حرف. | |
testType |
string | نعم | نوع الاختبار. القيم المحتملة:
|
|
testPlan |
string | نعم | مرجع إلى ملف خطة الاختبار.
|
|
engineInstances |
العدد الصحيح | نعم | عدد مثيلات محرك الاختبار المتوازي لتشغيل خطة الاختبار. تعرف على المزيد حول تكوين التحميل على نطاق واسع. | |
configurationFiles |
صفيف سلسلة | N | قائمة الملفات الخارجية، المطلوبة من قبل البرنامج النصي للاختبار. على سبيل المثال، ملفات أجزاء JMX أو ملفات بيانات CSV أو الصور أو أي ملف بيانات آخر. يقوم Azure Load Testing بتحميل جميع الملفات في نفس المجلد مثل البرنامج النصي للاختبار. في البرنامج النصي JMeter أو البرنامج النصي Locust، ارجع فقط إلى الملفات الخارجية باستخدام اسم الملف، وقم بإزالة أي معلومات مسار الملف. |
|
failureCriteria |
object | N | معايير فشل اختبار التحميل. راجع failureCriteria لمزيد من التفاصيل. | |
autoStop |
سلسلة أو كائن | N | أوقف اختبار التحميل تلقائيا عندما تتجاوز نسبة الخطأ قيمة. القيم المحتملة: - disable: لا توقف اختبار التحميل تلقائيا.- الكائن: راجع تكوين الضبط التلقائي لمزيد من التفاصيل. |
|
properties |
object | N |
|
|
zipArtifacts |
صفيف سلسلة | N | تحديد قائمة ملفات البيانات الاصطناعية المضغوطة. بالنسبة للملفات الأخرى غير البرنامج النصي للاختبار الرئيسي وخصائص المستخدم للاختبارات المستندة إلى JMeter وملفات البرنامج النصي Locust وملفات التكوين للاختبارات المستندة إلى Locust، إذا تجاوز حجم الملف 50 ميغابايت، فضغطها في ملف ZIP. تأكد من أن حجم ملف ZIP أقل من 50 ميغابايت. يسمح فقط ب 5 أدوات ZIP بحد أقصى 1000 ملف في كل منها وحجم غير مضغوط يبلغ 1 غيغابايت. ينطبق فقط على testType: JMX و testType: Locust. |
|
splitAllCSVs |
boolean | N | خطأ | تقسيم ملفات الإدخال CSV بالتساوي عبر جميع مثيلات محرك الاختبار. لمزيد من المعلومات، راجع قراءة ملف CSV في اختبارات التحميل. |
secrets |
object | N | قائمة الأسرار التي يشير إليها البرنامج النصي Apache JMeter أو Locust. راجع البيانات السرية لمزيد من التفاصيل. | |
env |
object | N | قائمة متغيرات البيئة التي يشير إليها البرنامج النصي Apache JMeter أو Locust. راجع متغيرات البيئة لمزيد من التفاصيل. | |
certificates |
object | N | قائمة شهادات العميل للمصادقة مع نقاط نهاية التطبيق في البرنامج النصي JMeter أو Locust. راجع الشهادات لمزيد من التفاصيل. | |
appComponents |
object | N | قائمة بالخادم -side الموارد التي يجب مراقبتها أثناء اختبار التحميل. راجع appComponents لمزيد من التفاصيل. | |
subnetId |
string | N | معرف المورد للشبكة الفرعية للشبكة الظاهرية لاختبار نقاط النهاية المستضافة بشكل خاص. تستضيف هذه الشبكة الفرعية الأجهزة الظاهرية لمحرك الاختبار الذي تم إدخاله. لمزيد من المعلومات، راجع كيفية تحميل نقاط النهاية المستضافة بشكل خاص. | |
publicIPDisabled |
boolean | N | تعطيل نشر عنوان IP عام وموازن تحميل ومجموعة أمان الشبكة أثناء اختبار نقطة نهاية خاصة. لمزيد من المعلومات، راجع كيفية تحميل نقاط النهاية المستضافة بشكل خاص. | |
regionalLoadTestConfig |
object | N | توزيع التحميل عبر المناطق لمحاكاة نسبة استخدام الشبكة للمستخدم من مناطق متعددة. لمزيد من المعلومات، راجع تكوين اختبار التحميل الإقليمي لمزيد من التفاصيل. | |
referenceIdentities |
object | N | قائمة الهويات المدارة المستخدمة في الاختبار للوصول إلى الأسرار من Azure Key Vault، ومقاييس معايير الفشل من جانب الخادم، ومصادقة نقاط النهاية الخاصة بك. راجع referenceIdentities لمزيد من التفاصيل. |
تحميل نموذج تكوين الاختبار
يحتوي مقتطف YAML التالي على مثال لتكوين اختبار التحميل.
version: v0.1
testId: SampleTest
displayName: Sample Test
description: Load test website home page
testPlan: SampleTest.jmx
testType: JMX
engineInstances: 1
subnetId: /subscriptions/abcdef01-2345-6789-0abc-def012345678/resourceGroups/sample-rg/providers/Microsoft.Network/virtualNetworks/load-testing-vnet/subnets/load-testing
configurationFiles:
- 'sampledata.csv'
- 'testfragment.jmx'
zipArtifacts:
- bigdata.zip
splitAllCSVs: True
failureCriteria:
- avg(response_time_ms) > 300
- percentage(error) > 50
- GetCustomerDetails: avg(latency) >200
autoStop:
errorPercentage: 80
timeWindow: 60
secrets:
- name: my-secret
value: https://akv-contoso.vault.azure.net/secrets/MySecret/abc1234567890def12345
keyVaultReferenceIdentity: /subscriptions/abcdef01-2345-6789-0abc-def012345678/resourceGroups/sample-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/sample-identity
failureCriteria تكوين
تمكنك معايير فشل الاختبار من تحديد الشروط لتحديد ما إذا كان تشغيل اختبار التحميل ناجحا أم لا. إذا تم استيفاء معيار فشل واحد أو أكثر، يحصل الاختبار على نتيجة اختبار فاشلة. تعرف على المزيد حول استخدام معايير فشل اختبار التحميل. يمكنك تحديد معايير الفشل على مقاييس العميل، مثل وقت الاستجابة وزمن الانتقال وما إلى ذلك، وعلى المقاييس من جانب الخادم لمكونات التطبيق من جانب الخادم.
مقاييس العميل
يمكنك تحديد معايير الفشل التي تنطبق على اختبار التحميل بأكمله، أو التي تنطبق على طلب معين. معايير الفشل لها البنية التالية:
- معايير الاختبار على مستوى اختبار التحميل:
Aggregate_function (client_metric) condition threshold. - معايير الاختبار المطبقة على طلبات معينة:
Request: Aggregate_function (client_metric) condition threshold.
يدعم اختبار تحميل Azure مقاييس العميل التالية:
| Metric | الدالة التجميعية | الحد | Condition | Description |
|---|---|---|---|---|
response_time_ms |
avg (متوسط)min (الحد الأدنى)max (الحد الأقصى)pxx (القيمة المئوية)، يمكن أن تكون xx 50 و75 و90 و95 و96 و97 و98 و99 و999 و999 |
قيمة عدد صحيح، تمثل عدد المللي ثانية (مللي ثانية). |
>(أكثر من)<(أصغر من) |
وقت الاستجابة أو الوقت المنقضي، بالمللي ثانية. تعرف على المزيد حول الوقت المنقضي في وثائق Apache JMeter. |
latency |
avg (متوسط)min (الحد الأدنى)max (الحد الأقصى)pxx (القيمة المئوية)، يمكن أن تكون xx 50، 90، 95، 99 |
قيمة عدد صحيح، تمثل عدد المللي ثانية (مللي ثانية). |
>(أكثر من)<(أصغر من) |
زمن الانتقال، بالمللي ثانية. تعرف على المزيد حول زمن الانتقال في وثائق Apache JMeter. |
error |
percentage |
قيمة رقمية في النطاق 0-100، تمثل نسبة مئوية. |
>(أكثر من) |
النسبة المئوية للطلبات الفاشلة. |
requests_per_sec |
avg (متوسط) |
قيمة رقمية مع ما يصل إلى منزلتين عشريتين. |
> (أكبر من) <(أصغر من) |
عدد الطلبات في الثانية. |
requests |
count |
قيمة عدد صحيح. |
> (أكبر من) <(أصغر من) |
إجمالي عدد الطلبات. |
مقاييس من جانب الخادم
يمكنك تحديد معايير الفشل على المقاييس من جانب الخادم لمكونات التطبيق من جانب الخادم.
يصف الجدول التالي الحقول المختلفة في serverMetrics: التكوين:
| المعلمة | Description |
|---|---|
resourceId |
Required. معرف المورد لمكون التطبيق الذي يجب تطبيق المعايير عليه |
metricNamespace |
Required. مساحة اسم المقياس من جانب الخادم. |
metricName |
Required. المقاييس من جانب الخادم التي يجب تطبيق المعايير عليها. |
aggregation |
Required. التجميع الذي يجب تطبيقه على المقاييس من جانب الخادم. |
condition |
Optional. عامل المقارنة، مثل greater than، أو less than. |
value |
Required. القيمة الرقمية للمقارنة مع المقياس. |
نموذج تكوين معايير الفشل
يظهر مقتطف التعليمات البرمجية التالي تكوين اختبار التحميل، والذي يحتوي على ثلاثة معايير فشل اختبار التحميل.
version: v0.1
testId: SampleTest
displayName: Sample Test
description: Load test website home page
testPlan: SampleTest.jmx
testType: JMX
engineInstances: 1
failureCriteria:
clientMetrics:
- avg(responseTimeMs) > 300
- percentage(error) > 50
- getCustomerDetails: avg(latency) > 200
serverMetrics:
- resourceId: /subscriptions/abcdef01-2345-6789-0abc-def012345678/resourceGroups/sample-rg/providers/Microsoft.Compute/virtualMachines/sample-vm
metricNamespace: Microsoft.Compute/virtualMachines
metricName: Percentage CPU
aggregation: Average
condition: GreaterThan
value: 80
- resourceId: /subscriptions/abcdef01-2345-6789-0abc-def012345678/resourceGroups/sample-rg/providers/Microsoft.Compute/virtualMachines/sample-vm
metricNamespace: Microsoft.Compute/virtualMachines
metricName: Available Memory
aggregation: Average
condition: LessThan
value: 20
appComponents تكوين
يمكنك مراقبة الموارد من جانب الخادم أثناء اختبار التحميل. تعرف على المزيد حول مراقبة الموارد من جانب الخادم. عند تشغيل اختبار تحميل لتطبيق مستضاف من Azure، يجمع Azure Load Testing مقاييس الموارد لمكونات التطبيق ويعرضها في لوحة معلومات اختبار التحميل.
يصف الجدول التالي الحقول المختلفة في appComponents: التكوين:
| المعلمة | Description |
|---|---|
resourceId |
Required. معرف المورد لمكون التطبيق الذي يجب تطبيق المعايير عليه. |
resourceName |
Optional. اسم المورد المراد مراقبته. |
kind |
Optional. نوع المورد الذي سيتم مراقبته. |
metrics |
Required. قائمة المقاييس التي سيتم مراقبتها لمكون التطبيق. يحتوي هذا على الاسم ومساحة الاسم والتجميع للمقياس. |
عينة تكوين مكونات التطبيق
يظهر مقتطف التعليمات البرمجية التالي تكوين اختبار التحميل، والذي يحتوي على مكونين للتطبيق.
version: v0.1
testId: SampleTest
displayName: Sample Test
description: Load test website home page
testPlan: SampleTest.jmx
testType: JMX
engineInstances: 1
appComponents:
- resourceId: "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/samplerg/providers/microsoft.insights/components/appComponentResource"
resourceName: appComponentResource #Optional
kind: web # Optional
metrics:
- name: "requests/duration"
namespace: microsoft.insights/components
aggregation: "Average"
- name: "requests/count"
aggregation: "Total"
namespace: microsoft.insights/components
- resourceId: "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/samplerg/providers/microsoft.insights/components/appComponentResource"
resourceName: appComponentResource #Optional
kind: web # Optional
metrics:
- name: "requests/duration"
aggregation: "Average"
namespace: microsoft.insights/components
- name: "requests/count"
aggregation: "Total"
namespace: microsoft.insights/components
autoStop تكوين
تمكنك وظيفة التوقف التلقائي لاختبار التحميل من إيقاف اختبار التحميل تلقائيا عندما تتجاوز نسبة الخطأ حدا معينا خلال نافذة زمنية معينة. تعرف على المزيد حول وظيفة التحمل التلقائي لاختبار التحميل.
| Key | Type | القيمة الافتراضية | Description |
|---|---|---|---|
errorPercentage |
العدد الصحيح | 90 | حد النسبة المئوية للخطأ، أثناء timeWindow. إذا تجاوزت نسبة الخطأ هذه النسبة المئوية خلال أي نافذة زمنية معينة، يتوقف تشغيل الاختبار تلقائيا. |
timeWindow |
العدد الصحيح | 60 | النافذة الزمنية بالثوان لحساب errorPercentage. |
عينة تكوين Autostop
يظهر مقتطف التعليمات البرمجية التالي تكوين اختبار التحميل، والذي يحتوي على ثلاثة معايير فشل اختبار التحميل.
version: v0.1
testId: SampleTest
displayName: Sample Test
description: Load test website home page
testPlan: SampleTest.jmx
testType: JMX
engineInstances: 1
autoStop:
errorPercentage: 80
timeWindow: 60
properties تكوين
يمكنك تحديد ملف خصائص مستخدم JMeter لاختبار التحميل الخاص بك. يتم تحميل ملف خصائص المستخدم جنبا إلى جنب مع خطة الاختبار والملفات الأخرى. تعرف على المزيد حول استخدام خصائص مستخدم JMeter في اختبار تحميل Azure.
| Key | Type | القيمة الافتراضية | Description |
|---|---|---|---|
userPropertyFile |
string | ملف لاستخدامه كملف خصائص مستخدم Apache JMeter أو ملف تكوين Locust. بالنسبة إلى Locust، يتم دعم الملفات ذات الملحقات .conf .ini و.toml كملف تكوين. يتم تحميل الملف إلى مورد اختبار تحميل Azure جنبا إلى جنب مع البرنامج النصي للاختبار وملفات التكوين الأخرى. إذا كان الملف في مجلد فرعي على جهازك المحلي، فاستخدم مسارا يتعلق بموقع البرنامج النصي للاختبار. |
نموذج تكوين ملف خاصية المستخدم
يظهر مقتطف التعليمات البرمجية التالي تكوين اختبار التحميل، والذي يحدد ملف خصائص المستخدم.
version: v0.1
testId: SampleTest
displayName: Sample Test
description: Load test website home page
testPlan: SampleTest.jmx
testType: JMX
engineInstances: 1
properties:
userPropertyFile: 'user.properties'
يظهر مقتطف التعليمات البرمجية التالي تكوين اختبار التحميل، والذي يحدد ملف تكوين Locust.
version: v0.1
testId: SampleTest
displayName: Sample Test
description: Load test website home page
testPlan: SampleTest.py
testType: Locust
engineInstances: 1
properties:
userPropertyFile: 'locust.conf'
secrets تكوين
يمكنك تخزين القيم السرية في Azure Key Vault والإشارة إليها في خطة الاختبار الخاصة بك. تعرف على المزيد حول استخدام الأسرار مع اختبار تحميل Azure.
| Key | Type | القيمة الافتراضية | Description |
|---|---|---|---|
name |
string | اسم السر. يجب أن يتطابق هذا الاسم مع الاسم السري الذي تستخدمه في طلبات خطة الاختبار. | |
value |
string | URI (معرف سري) للبيانات السرية ل Azure Key Vault. |
عينة تكوين البيانات السرية
يظهر مقتطف التعليمات البرمجية التالي تكوين اختبار التحميل، والذي يشير إلى سر my-secret في Azure Key Vault.
version: v0.1
testId: SampleTest
displayName: Sample Test
description: Load test website home page
testPlan: SampleTest.jmx
testType: JMX
engineInstances: 1
secrets:
- name: my-secret
value: https://akv-contoso.vault.azure.net/secrets/MySecret/abc1234567890def12345
env تكوين
يمكنك تحديد متغيرات البيئة والإشارة إليها في خطة الاختبار الخاصة بك. تعرف على المزيد حول استخدام متغيرات البيئة مع Azure Load Testing.
| Key | Type | القيمة الافتراضية | Description |
|---|---|---|---|
name |
string | اسم متغير البيئة. يجب أن يتطابق هذا الاسم مع اسم المتغير الذي تستخدمه في طلبات خطة الاختبار. | |
value |
string | قيمة متغير البيئة. |
نموذج تكوين متغير البيئة
يظهر مقتطف التعليمات البرمجية التالي تكوين اختبار تحميل، والذي يحدد متغير my-variable بيئة وقيمة my-value.
version: v0.1
testId: SampleTest
displayName: Sample Test
description: Load test website home page
testPlan: SampleTest.jmx
testType: JMX
engineInstances: 1
env:
- name: my-variable
value: my-value
certificates تكوين
يمكنك تمرير شهادات العميل إلى اختبار التحميل الخاص بك. يتم تخزين الشهادة في Azure Key Vault. تعرف على المزيد حول استخدام شهادات العميل مع Azure Load Testing.
| Key | Type | القيمة الافتراضية | Description |
|---|---|---|---|
name |
string | اسم الشهادة. | |
value |
string | URI (المعرف السري) للشهادة في Azure Key Vault. |
نموذج تكوين الشهادة
يظهر مقتطف التعليمات البرمجية التالي تكوين اختبار تحميل، والذي يشير إلى شهادة عميل في Azure Key Vault.
version: v0.1
testId: SampleTest
displayName: Sample Test
description: Load test website home page
testPlan: SampleTest.jmx
testType: JMX
engineInstances: 1
certificates:
- name: my-certificate
value: https://akv-contoso.vault.azure.net/certificates/MyCertificate/abc1234567890def12345
referenceIdentities تكوين
يمكنك استخدام الهويات المدارة لسيناريوهات مختلفة في اختبار التحميل الخاص بك. يمكن استخدام الهويات المدارة في الاختبار للوصول إلى الأسرار أو الشهادات من Azure Key Vault، وجلب مقاييس لمعايير الفشل من جانب الخادم، ومصادقة نقاط النهاية الخاصة بك.
يصف الجدول التالي الحقول المختلفة في referenceIdentities: التكوين:
| المعلمة | Description |
|---|---|
kind |
Required. يحدد هذا السيناريو الذي يتم استخدام الهوية المدارة له. يمكن أن يكون هذا أحد ما يلي KeyVault، Metricsأو Engine. يمكن أن يكون هناك عناصر متعددة للنوع Engine. |
type |
Required. نوع الهوية. يمكن أن يكون UserAssigned هذا أو SystemAssigned. |
value |
Required. معرف المورد للهوية المدارة. لا يلزم توفير هذا إذا كان النوع هو SystemAssigned. |
نموذج تكوين الهويات المرجعية
يظهر مقتطف التعليمات البرمجية التالي تكوين اختبار تحميل لهويات متعددة.
version: v0.1
testId: SampleTest
displayName: Sample Test
description: Load test website home page
testPlan: SampleTest.jmx
testType: JMX
engineInstances: 1
secrets:
- name: my-secret
value: https://akv-contoso.vault.azure.net/secrets/MySecret/abc1234567890def12345
failureCriteria:
serverMetrics:
- resourceId: /subscriptions/abcdef01-2345-6789-0abc-def012345678/resourceGroups/sample-rg/providers/Microsoft.Compute/virtualMachines/sample-vm
metricNamespace: Microsoft.Compute/virtualMachines
metricName: Percentage CPU
aggregation: Average
condition: GreaterThan
value: 80
referenceIdentities:
- kind: KeyVault
type: UserAssigned
value: /subscriptions/abcdef01-2345-6789-0abc-def012345678/resourceGroups/sample-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/sample-identity
- kind: Metrics
type: SystemAssigned
- kind: Engine
type: UserAssigned
value: /subscriptions/abcdef01-2345-6789-0abc-def012345678/resourceGroups/sample-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/sample-identity
- kind: Engine
type: UserAssigned
value: /subscriptions/abcdef01-2345-6789-0abc-def012345678/resourceGroups/sample-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/sample-identity1
طلب ملف JSON
إذا كنت تستخدم اختبارا يستند إلى عنوان URL، يمكنك تحديد طلبات HTTP في ملف JSON بدلا من استخدام برنامج نصي للاختبار. تأكد من تعيين testType إلى URL في ملف YAML لتكوين الاختبار والإشارة إلى ملف JSON للطلبات.
طلبات HTTP
يستخدم ملف JSON الطلبات الخصائص التالية لتعريف الطلبات في الخاصية requests :
| Property | Type | Description |
|---|---|---|
requestName |
string | اسم الطلب الفريد. يمكنك الرجوع إلى اسم الطلب عند تكوين معايير فشل الاختبار. |
responseVariables |
صفيف | قائمة متغيرات الاستجابة. استخدم متغيرات الاستجابة لاستخراج قيمة من الطلب والإشارة إليها في طلب لاحق. تعرف على المزيد حول متغيرات الاستجابة. |
responseVariables.extractorType |
string | آلية استخراج قيمة من إخراج الاستجابة. القيم المعتمدة هي XPathExtractor و JSONExtractor و RegularExpression. |
responseVariables.expression |
string | تعبير لاسترداد إخراج الاستجابة. يعتمد التعبير على قيمة نوع المستخرج. |
responseVariables.variableName |
string | اسم متغير الاستجابة الفريد. يمكنك الرجوع إلى هذا المتغير في طلب لاحق باستخدام بناء الجملة {$variable-name} . |
queryParameters |
صفيف | قائمة معلمات سلسلة الاستعلام لتمريرها إلى نقطة النهاية. |
queryParameters.key |
string | اسم معلمة سلسلة الاستعلام. |
queryParameters.value |
string | قيمة معلمة سلسلة الاستعلام. |
requestType |
string | نوع الطلب. القيم المدعومة هي: URL أو CURL. |
endpoint |
string | عنوان URL لنقطة نهاية التطبيق للاختبار. |
headers |
صفيف | قائمة رؤوس HTTP لتمريرها إلى نقطة نهاية التطبيق. حدد زوجا من قيم المفاتيح لكل رأس. |
body |
string | نص أساسي لطلب HTTP. يمكنك استخدام requestBodyFormat لتحديد تنسيق محتوى النص الأساسي. |
requestBodyFormat |
string | تنسيق محتوى النص الأساسي. القيم المدعومة هي: TextوJSONJavaScriptHTML.XML |
method |
string | أسلوب HTTP لاستدعاء نقطة النهاية. القيم المدعومة هي: GETو POSTPUTو DELETEوPATCHHEAD.OPTIONS |
curlCommand |
string | الأمر cURL للتشغيل. يتطلب أن requestType يكون هو CURL. |
تحتوي القصاصة البرمجية JSON التالية على مثال لطلبات ملف JSON:
{
"version": "1.0",
"scenarios": {
"requestGroup1": {
"requests": [
{
"requestName": "add",
"responseVariables": [],
"queryParameters": [
{
"key": "param1",
"value": "value1"
}
],
"requestType": "URL",
"endpoint": "https://www.contoso.com/orders",
"headers": {
"api-token": "my-token"
},
"body": "{\r\n \"customer\": \"Contoso\",\r\n \"items\": {\r\n\t \"product_id\": 321,\r\n\t \"count\": 50,\r\n\t \"amount\": 245.95\r\n }\r\n}",
"method": "POST",
"requestBodyFormat": "JSON"
},
{
"requestName": "get",
"responseVariables": [],
"requestType": "CURL",
"curlCommand": "curl --request GET 'https://www.contoso.com/orders'"
},
],
"csvDataSetConfigList": []
}
},
"testSetup": [
{
"virtualUsersPerEngine": 1,
"durationInSeconds": 600,
"loadType": "Linear",
"scenario": "requestGroup1",
"rampUpTimeInSeconds": 30
}
]
}
تحميل التكوين
يستخدم ملف JSON الطلبات الخصائص التالية لتعريف تكوين التحميل في الخاصية testSetup :
| Property | Type | نوع التحميل | Description |
|---|---|---|---|
loadType |
string | نوع نمط التحميل. القيم المدعومة هي: linearو stepو.spike |
|
scenario |
string | مرجع إلى مجموعة الطلبات، المحددة في الخاصية scenarios . |
|
virtualUsersPerEngine |
العدد الصحيح | All | عدد المستخدمين الظاهريين لكل مثيل محرك اختبار. |
durationInSeconds |
العدد الصحيح | All | إجمالي مدة اختبار التحميل بالثوان. |
rampUpTimeInSeconds |
العدد الصحيح | خطي، خطوة | المدة بالثوان لزيادة العدد المستهدف للمستخدمين الظاهريين. |
rampUpSteps |
العدد الصحيح | Step | عدد الخطوات للوصول إلى العدد المستهدف للمستخدمين الظاهريين. |
spikeMultiplier |
العدد الصحيح | تصاعد | عامل ضرب عدد المستخدمين المستهدفين أثناء مدة الارتفاع. |
spikeHoldTimeInSeconds |
العدد الصحيح | تصاعد | إجمالي المدة بالثوان للحفاظ على حمل الارتفاع. |
تكوين اختبار التحميل الإقليمي
يمكنك توزيع الحمل عبر المناطق لمحاكاة أنماط حركة مرور الحياة الحقيقية بشكل أفضل. يمكنك تحديد المناطق التي تريد إنشاء الحمل منها ومقدار الحمل الذي تريد محاكاته من كل منطقة. يمكنك القيام بذلك عن طريق تحديد اسم المنطقة وعدد مثيلات المحرك التي تريدها في تلك المنطقة. تعرف على المزيد حول إنشاء التحميل من مناطق متعددة.
| Key | Type | القيمة الافتراضية | Description |
|---|---|---|---|
region |
string | اسم منطقة Azure. | |
engineInstances |
العدد الصحيح | عدد مثيلات المحرك لمنطقة Azure هذه. |
عينة تكوين اختبار التحميل الإقليمي
يظهر مقتطف التعليمات البرمجية التالي تكوين اختبار التحميل، والذي يحدد منطقتين eastuseastasia من مناطق Azure وعدد مثيلات المحرك لكل منطقة.
displayName: Sample Test
testPlan: sampleScript.jmx
description: 'Load test website home page'
engineInstances: 4
testId: SampleTest
testType: Locust
splitAllCSVs: False
regionalLoadTestConfig:
- region: eastus
engineInstances: 2
- region: eastasia
engineInstances: 2
failureCriteria:
- p90(response_time_ms) > 10000
autoStop:
errorPercentage: 90
timeWindow: 60
المحتويات ذات الصلة
- تعرف على كيفية إنشاء اختبار التراجع التلقائي في سير عمل CI/CD.
- تعرف على كيفية تحديد معلمات اختبارات التحميل باستخدام البيانات السرية ومتغيرات البيئة.
- تعرف على كيفية تحميل نقاط النهاية الآمنة للاختبار.