Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
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:
|
|
testPlan |
String | Y | Test planı dosyasına referans. |
|
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 |
|
|
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
İlgili içerik
- CI/CD iş akışınızda otomatik regresyon testi oluşturmayı öğrenin.
- Gizli diziler ve ortam değişkenleriyle yük testlerini parametreleştirmeyi öğrenin.
- Test güvenli uç noktalarını yüklemeyi öğrenin.