YAML'de yük testi yapılandırma

YAML kullanarak Azure Yük Testi'nde yük testinizi yapılandırmayı öğrenin. Sürekli tümleştirme ve sürekli teslim (CI/CD) iş akışınızdan yük testleri oluşturmak ve çalıştırmak için test yapılandırması YAML dosyasını kullanırsınız.

Yük testi YAML söz dizimi

Yük testi yapılandırması aşağıdaki anahtarları kullanır:

Anahtar Türü Gerekli Varsayılan değer Açıklama
version String Y Yük testi spesifikasyonu versiyonu. Desteklenen tek değer v0.1.
testId String Y Yük testinin benzersiz tanımlayıcısı. Değer 2 ile 50 karakter arasında olmalıdır ([a-z0-9_-]). Mevcut bir test için azure portalındaki test ayrıntıları sayfasından testId alabilirsiniz.
testName String N kullanım dışı bırakıldı. Yük testinin benzersiz tanımlayıcısı. Bu ayar ile testIddeğiştirilir. testName alanıyla mevcut testleri çalıştırmaya devam edebilirsiniz.
displayName String N Testin görüntüleme adı. Bu değer, Azure portalındaki test listesinde gösterilir. Sağlanmadıysa, görünen ad olarak testId kullanılır.
description String N Testin kısa açıklaması. Değerin uzunluğu en fazla 100 karakterdir.
testType String Y Test türü. Olası değerler:
  • URL: URL tabanlı yük testi
  • JMX: JMeter tabanlı yük testi
  • Locust: Çekirge tabanlı yük testi
testPlan String Y Test planı dosyasına referans.
  • testType: JMXise: JMeter test betiğinin göreli yolu.
  • If testType: Locust: Locust test betiğinin göreli yolu.
  • if testType: URL: requests JSON dosyasının göreli yolu.
engineInstances tamsayı Y Test planını çalıştırmak için kullanılan paralel test motoru örneklerinin sayısı. Yüksek ölçekli yük yapılandırma hakkında daha fazla bilgi edinin.
configurationFiles dize dizisi N Test betiği için gerekli olan dış dosyaların listesi. Örneğin, JMX parça dosyaları, CSV veri dosyaları, görüntüler veya başka herhangi bir veri dosyası.
Azure Load Testing, test betiğiyle aynı klasördeki tüm dosyaları karşıya yükler. JMeter betiğinde veya Locust betiğinde yalnızca dosya adını kullanarak dış dosyalara başvurun ve dosya yolu bilgilerini kaldırın.
failureCriteria object N Yük testi başarısız ölçütleri. Daha fazla bilgi için bkz . failureCriteria .
autoStop dize veya nesne N Hata yüzdesi bir değeri aştığında yük testini otomatik olarak durdurun.
Olası değerler:
- disable: Yük testlerini otomatik olarak durdurma.
- object: Daha fazla ayrıntı için bkz . otomatik durdurma yapılandırması.
properties object N
  • If testType: JMX: JMeter kullanıcı özelliği dosyası başvuruları.
  • If testType: Locust: Locust yapılandırma dosyası başvurur.
Daha fazla ayrıntı için özelliklere bakın.
zipArtifacts dize dizisi N Zip yapıt dosyalarının listesini belirtir. JMeter tabanlı testler için ana test betiği ve kullanıcı özellikleri dışındaki dosyalar ve Locust tabanlı testler için Locust betiği ve yapılandırma dosyaları için, dosya boyutu 50 MB'ı aşarsa, bunları zip dosyasına sıkıştırın. ZIP dosyasının boyutunun 50 MB'ın altında kaldığından emin olun. Her birinde en fazla 1000 dosya ve sıkıştırılmamış boyutu 1 GB olan yalnızca 5 ZIP yapıtına izin verilir. Yalnızca ve testType: JMXiçin testType: Locust geçerlidir.
splitAllCSVs Boolean N Yanlış Giriş CSV dosyalarını tüm test altyapısı örnekleri arasında eşit olarak bölün. Daha fazla bilgi için bkz . Yük testlerinde CSV dosyasını okuma.
secrets object N Apache JMeter veya Locust betiğinin başvurduğunu gizli dizilerin listesi. Daha fazla ayrıntı için gizli dizilere bakın.
env object N Apache JMeter betiğinin veya Locust'un başvurduğunu ortam değişkenlerinin listesi. Daha fazla ayrıntı için ortam değişkenlerine bakın.
certificates object N JMeter veya Locust betiğinde uygulama uç noktalarıyla kimlik doğrulaması için istemci sertifikalarının listesi. Daha fazla ayrıntı için bkz . sertifikalar .
appComponents object N Yük testi sırasında izlenecek sunucu -side kaynaklarının listesi. Daha fazla ayrıntı için bkz. appComponents .
subnetId String N Özel olarak barındırılan uç noktaları test için sanal ağ alt ağının kaynak kimliği. Bu alt ağ, eklenen test altyapısı VM'lerini barındırıyor. Daha fazla bilgi için bkz . Test özel olarak barındırılan uç noktaları yükleme.
publicIPDisabled Boolean N Özel uç noktayı test ederken genel IP adresi, yük dengeleyici ve ağ güvenlik grubu dağıtımını devre dışı bırakın. Daha fazla bilgi için bkz . Test özel olarak barındırılan uç noktaları yükleme.
regionalLoadTestConfig object N Birden çok bölgeden gelen kullanıcı trafiğinin benzetimini yapmak için yükü bölgeler arasında dağıt. Daha fazla bilgi için bkz. Bölgesel yük testi yapılandırması .
referenceIdentities object N Azure Key Vault'unuzdan gizli dizilere erişmek için testte kullanılan yönetilen kimliklerin listesi, sunucu tarafı hata ölçütlerine yönelik ölçümler ve uç noktalarınızın kimlik doğrulaması. Daha fazla ayrıntı için bkz. referenceIdentities .

Yük testi yapılandırma örneği

Aşağıdaki YAML kod parçacığı örnek bir yük testi yapılandırması içerir.

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 konfigürasyon

Test başarısız ölçütleri, yük testi çalıştırmanın başarılı olup olmadığını belirlemek için koşulları tanımlamanızı sağlar. Bir veya daha fazla başarısız ölçüt karşılanırsa, test başarısız bir test sonucu alır. Yük testi başarısız ölçütlerini kullanma hakkında daha fazla bilgi edinin. İstemci ölçümlerinde yanıt süresi, gecikme süresi vb. gibi hata ölçütleri ve sunucu tarafı uygulama bileşenleriniz için sunucu tarafı ölçümleri tanımlayabilirsiniz.

İstemci ölçümleri

Yük testinin tamamına uygulanan veya belirli bir istek için geçerli olan hata ölçütlerini tanımlayabilirsiniz. Başarısız ölçütler aşağıdaki yapıya sahiptir:

  • Yük testi düzeyinde test ölçütleri: Aggregate_function (client_metric) condition threshold.
  • Belirli isteklere uygulanan test ölçütleri: Request: Aggregate_function (client_metric) condition threshold.

Azure Load Testing aşağıdaki istemci ölçümlerini destekler:

Ölçü birimi Toplama işlevi Eşik Koşul Açıklama
response_time_ms avg (ortalama)
min (minimum)
max (maksimum)
pxx (yüzdebirlik), xx 50, 75, 90, 95, 96, 97, 98, 99, 999 ve 9999 olabilir
Milisaniye (ms) sayısını temsil eden tamsayı değeri. > (>)
<'dan küçük
Yanıt süresi veya geçen süre (milisaniye cinsinden). Geçen süre hakkında daha fazla bilgiyi Apache JMeter belgelerinde bulabilirsiniz.
latency avg (ortalama)
min (minimum)
max (maksimum)
pxx (yüzdebirlik), xx 50, 90, 95, 99 olabilir
Milisaniye (ms) sayısını temsil eden tamsayı değeri. > (>)
<'dan küçük
Milisaniye cinsinden gecikme süresi. Apache JMeter belgelerinde gecikme süresi hakkında daha fazla bilgi edinin.
error percentage Yüzdeyi temsil eden 0-100 aralığındaki sayısal değer. > (>) Başarısız isteklerin yüzdesi.
requests_per_sec avg (ortalama) İki ondalık basameğe kadar olan sayısal değer. > (büyüktür)
<'dan küçük
Saniye başına istek sayısı.
requests count Tamsayı değeri. > (büyüktür)
<'dan küçük
Toplam istek sayısı.

Sunucu tarafı ölçümleri

Sunucu tarafı uygulama bileşenleriniz için sunucu tarafı ölçümlerinde hata ölçütleri tanımlayabilirsiniz.

Aşağıdaki tabloda yapılandırmadaki serverMetrics: farklı alanlar açıklanmaktadır:

Parametre Açıklama
resourceId Gerekli. Ölçütlerin uygulanması gereken uygulama bileşeninin kaynak kimliği
metricNamespace Gerekli. Sunucu tarafı ölçüm ad alanı.
metricName Gerekli. Ölçütlerin uygulanması gereken sunucu tarafı ölçümleri.
aggregation Gerekli. Sunucu tarafı ölçümlerine uygulanacak toplama.
condition Opsiyonel. karşılaştırma işleci, örneğin greater than, veya less than.
value Gerekli. Ölçümle karşılaştıracak sayısal değer.

Hata ölçütleri yapılandırma örneği

Aşağıdaki kod parçacığında üç yük testi başarısızlık ölçütüne sahip bir yük testi yapılandırması gösterilmektedir.

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 konfigürasyon

Yük testi sırasında sunucu tarafı kaynaklarını izleyebilirsiniz. Sunucu tarafı kaynaklarını izleme hakkında daha fazla bilgi edinin. Azure tarafından barındırılan bir uygulama için yük testi çalıştırdığınızda Azure Yük Testi uygulama bileşenleriniz için kaynak ölçümlerini toplar ve bunları yük testi panosunda sunar.

Aşağıdaki tabloda yapılandırmadaki appComponents: farklı alanlar açıklanmaktadır:

Parametre Açıklama
resourceId Gerekli. Ölçütlerin uygulanması gereken uygulama bileşeninin kaynak kimliği.
resourceName Opsiyonel. İzlenecek kaynağın adı.
kind Opsiyonel. İzlenecek kaynağın türü.
metrics Gerekli. Uygulama bileşeni için izlenecek ölçümlerin listesi. Bu, ölçümün adını, ad alanını ve toplamasını içerir.

Uygulama Bileşenleri yapılandırma örneği

Aşağıdaki kod parçacığında iki uygulama bileşeni olan bir yük testi yapılandırması gösterilmektedir.

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 konfigürasyon

Yük testi otomatik durdurma işlevi, belirli bir zaman penceresi sırasında hata yüzdesi belirli bir eşiği aştığında yük testini otomatik olarak durdurmanızı sağlar. Yük testi otomatik durdurma işlevi hakkında daha fazla bilgi edinin.

Anahtar Türü Varsayılan değer Açıklama
errorPercentage tamsayı 90 sırasında hata yüzdesi eşiği timeWindow. Herhangi bir zaman penceresinde hata yüzdesi bu yüzdeyi aşarsa, test çalıştırması otomatik olarak durdurulur.
timeWindow tamsayı 60 hesaplama errorPercentageiçin saniye olarak zaman penceresi.

Otomatik durdurma yapılandırma örneği

Aşağıdaki kod parçacığında üç yük testi başarısızlık ölçütüne sahip bir yük testi yapılandırması gösterilmektedir.

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 konfigürasyon

Yük testiniz için bir JMeter kullanıcı özellikleri dosyası belirtebilirsiniz. Kullanıcı özellikleri dosyası, test planı ve diğer dosyalar ile birlikte karşıya yüklenir. Azure Yük Testi'nde JMeter kullanıcı özelliklerini kullanma hakkında daha fazla bilgi edinin.

Anahtar Türü Varsayılan değer Açıklama
userPropertyFile String Apache JMeter kullanıcı özellikleri dosyası veya Locust yapılandırma dosyası olarak kullanılacak dosya. Locust için.conf, .ini ve .toml uzantılı dosyalar yapılandırma dosyası olarak desteklenir. Dosya, test betiği ve diğer yapılandırma dosyalarının yanı sıra Azure Load Testing kaynağına yüklenir. Dosya yerel makinenizdeki bir alt klasördeyse, test betiğinin konumuna göre bir yol kullanın.

Kullanıcı özellik dosyası yapılandırma örneği

Aşağıdaki kod parçacığı, kullanıcı özellikleri dosyasını belirten bir yük testi yapılandırması gösterir.

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'

Aşağıdaki kod parçacığı, Locust yapılandırma dosyasını belirten bir yük testi yapılandırması gösterir.

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 konfigürasyon

Gizli dizi değerlerini Azure Key Vault'ta depolayabilir ve test planınızda bunlara başvurabilirsiniz. Azure Load Testing ile gizli dizileri kullanma hakkında daha fazla bilgi edinin.

Anahtar Türü Varsayılan değer Açıklama
name String Gizlinin adı. Bu ad, test planı isteklerinde kullandığınız gizli dizi adıyla eşleşmelidir.
value String Azure Key Vault gizli dizisi için URI (gizli dizi tanımlayıcısı).

Gizli dizi yapılandırma örneği

Aşağıdaki kod parçacığında, Azure Key Vault'taki bir gizli diziye my-secret başvuran bir yük testi yapılandırması gösterilmektedir.

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 konfigürasyon

Ortam değişkenlerini belirtebilir ve test planınızda bunlara başvurabilirsiniz. Azure Yük Testi ile ortam değişkenlerini kullanma hakkında daha fazla bilgi edinin.

Anahtar Türü Varsayılan değer Açıklama
name String Ortam değişkeninin adı. Bu ad, test planı isteklerinde kullandığınız değişken adıyla eşleşmelidir.
value String Ortam değişkeninin değeri.

Ortam değişkeni yapılandırma örneği

Aşağıdaki kod parçacığı, bir ortam değişkeni my-variable ve değerini my-valuebelirten bir yük testi yapılandırması gösterir.

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 konfigürasyon

İstemci sertifikalarını yük testinize geçirebilirsiniz. Sertifika Azure Key Vault'ta depolanır. Azure Yük Testi ile istemci sertifikalarını kullanma hakkında daha fazla bilgi edinin.

Anahtar Türü Varsayılan değer Açıklama
name String Sertifikanın adı.
value String Azure Key Vault'taki sertifika için URI (gizli dizi tanımlayıcısı).

Sertifika yapılandırma örneği

Aşağıdaki kod parçacığı, Azure Key Vault'taki bir istemci sertifikasına başvuran bir yük testi yapılandırmasını gösterir.

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 konfigürasyon

Yük testinizde çeşitli senaryolar için yönetilen kimlikleri kullanabilirsiniz. Yönetilen kimlikler, Azure Key Vault'unuzdan gizli dizilere veya sertifikalara erişmek, sunucu tarafı hata ölçütleri için ölçümleri getirmek ve uç noktalarınızın kimlik doğrulaması için testte kullanılabilir.

Aşağıdaki tabloda yapılandırmadaki referenceIdentities: farklı alanlar açıklanmaktadır:

Parametre Açıklama
kind Gerekli. Bu, yönetilen kimliğin kullanıldığı senaryoyu tanımlar. Bu, aşağıdakilerden KeyVaultMetricsbiri veya Engineolabilir. türü Engineiçin birden çok öğe olabilir.
type Gerekli. Kimlik türü. Bu, UserAssigned veya SystemAssigned olabilir.
value Gerekli. Yönetilen kimliğin kaynak kimliği. Türü SystemAssignedise bu sağlanmamalıdır.

Başvuru kimlikleri yapılandırma örneği

Aşağıdaki kod parçacığında birden çok kimlik için bir yük testi yapılandırması gösterilmektedir.

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

İstekler JSON dosyası

URL tabanlı bir test kullanıyorsanız, test betiği kullanmak yerine JSON dosyasında HTTP isteklerini belirtebilirsiniz. test yapılandırması YAML dosyasında öğesini olarak ayarladığınızdan testTypeURL emin olun ve istekler JSON dosyasına başvurun.

HTTP istekleri

requests JSON dosyası, özelliğinde requests istekleri tanımlamak için aşağıdaki özellikleri kullanır:

Mülkiyet Türü Açıklama
requestName String Benzersiz istek adı. Test başarısız ölçütlerini yapılandırırken istek adına başvurabilirsiniz.
responseVariables array Yanıt değişkenlerinin listesi. İstekten bir değer ayıklamak ve sonraki bir istekte buna başvurmak için yanıt değişkenlerini kullanın. Yanıt değişkenleri hakkında daha fazla bilgi edinin.
responseVariables.extractorType String Yanıt çıkışından bir değer ayıklama mekanizması. Desteklenen değerler , XPathExtractorve JSONExtractordeğerleridirRegularExpression.
responseVariables.expression String Yanıt çıkışını almak için ifade. İfade ayıklayıcı türü değerine bağlıdır.
responseVariables.variableName String Benzersiz yanıt değişkeni adı. Söz dizimini kullanarak sonraki bir istekte bu değişkene {$variable-name} başvurabilirsiniz.
queryParameters array Uç noktaya geçirecek sorgu dizesi parametrelerinin listesi.
queryParameters.key String Sorgu dizesi parametre adı.
queryParameters.value String Sorgu dizesi parametre değeri.
requestType String İstek türü. Desteklenen değerler şunlardır: URL veya CURL.
endpoint String Test etmek için uygulama uç noktasının URL'si.
headers array Uygulama uç noktasına geçirecek HTTP üst bilgilerinin listesi. Her üst bilgi için bir anahtar-değer çifti belirtin.
body String HTTP isteği için gövde metni. gövde içeriğinin biçimini belirtmek için öğesini kullanabilirsiniz requestBodyFormat .
requestBodyFormat String Gövde içeriğinin biçimi. Desteklenen değerler şunlardır: Text, JSON, JavaScript, HTMLve XML.
method String Uç noktayı çağırmak için HTTP yöntemi. Desteklenen değerler şunlardır: GET, POST, PUT, DELETE, PATCH, , HEADve OPTIONS.
curlCommand String cURL komutunu çalıştırın. öğesinin olması requestTypeCURLgerekir.

Aşağıdaki JSON parçacığı bir örnek istek JSON dosyası içerir:

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

Yapılandırmayı yükleme

requests JSON dosyası, özelliğinde testSetup yük yapılandırmasını tanımlamak için aşağıdaki özellikleri kullanır:

Mülkiyet Türü Yükleme türü Açıklama
loadType String Yük deseni türü. Desteklenen değerler şunlardır: linear, stepve spike.
scenario String özelliğinde belirtilen istek grubuna başvuru scenarios .
virtualUsersPerEngine tamsayı Tümü Test altyapısı örneği başına sanal kullanıcı sayısı.
durationInSeconds tamsayı Tümü Yük testinin saniye cinsinden toplam süresi.
rampUpTimeInSeconds tamsayı Doğrusal, Adım Hedef sanal kullanıcı sayısına yükselmek için saniye cinsinden süre.
rampUpSteps tamsayı Adım Hedef sanal kullanıcı sayısına ulaşma adımlarının sayısı.
spikeMultiplier tamsayı Başak Ani artış süresi boyunca hedef kullanıcı sayısını çarpma faktörü.
spikeHoldTimeInSeconds tamsayı Başak Ani yükü korumak için saniye cinsinden toplam süre.

Bölgesel yük testi yapılandırması

Gerçek hayattaki trafik desenlerinin simülasyonunu daha iyi yapmak için yükü bölgeler arasında dağıtabilirsiniz. Yükü oluşturmak istediğiniz bölgeleri ve her bölgeden benzetimini yapmak istediğiniz yük miktarını belirtebilirsiniz. Bölge adını ve bu bölgede istediğiniz altyapı örneklerinin sayısını belirterek bunu yapabilirsiniz. Birden çok bölgeden yük oluşturma hakkında daha fazla bilgi edinin.

Anahtar Türü Varsayılan değer Açıklama
region String Azure bölgesinin adı.
engineInstances tamsayı Bu Azure bölgesi için altyapı örneklerinin sayısı.

Bölgesel yük testi yapılandırma örneği

Aşağıdaki kod parçacığı, iki Azure bölgesini ve eastus her bölge eastasia için altyapı örneği sayısını belirten bir yük testi yapılandırması gösterir.

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