Opret en YAML-konfigurationsfil til indlæsningstest
Få mere at vide om, hvordan du konfigurerer din belastningstest i Azure Load Testing ved hjælp af YAML. Du kan bruge YAML-filen til testkonfiguration til at oprette og køre belastningstest fra din Arbejdsproces for GitHub-handlinger.
Indlæs YAML-syntaks for indlæsningstest
En konfiguration af indlæsningstest bruger følgende nøgler:
| Nøgle | Slags | Kræves | Standardværdi | Beskrivelse |
|---|---|---|---|---|
version |
streng | Y | Indlæs versionen af testspecifikationen. Den eneste understøttede værdi er v0.1. |
|
testId |
streng | Y | Entydigt id for belastningstesten. Værdien skal være mellem 2 og 50 tegn ([a-z0-9_-]). I forbindelse med en eksisterende test kan du hente testId fra siden med testoplysninger på Azure Portal. |
|
testName |
streng | N |
udfaset. Entydigt id for belastningstesten. Denne indstilling erstattes med testId. Du kan stadig køre eksisterende test med feltet testName. |
|
displayName |
streng | N | Vist navn på testen. Denne værdi vises på listen over test på Azure Portal. Hvis den ikke er angivet, bruges testId som vist navn. |
|
description |
streng | N | Kort beskrivelse af testen. Værdien har en maksimumlængde på 100 tegn. | |
testType |
streng | Y | Testtype. Mulige værdier:
|
|
testPlan |
streng | Y | Reference til filen med testplanen.
|
|
engineInstances |
heltal | Y | Antal forekomster af parallel testprogram til kørsel af testplanen. | |
configurationFiles |
matrix af streng | N | Liste over eksterne filer, der kræves af testscriptet. F.eks. CSV-datafiler, billeder eller andre datafiler. Azure Load Testing uploader alle filer i den samme mappe som testscriptet. I JMeter-scriptet skal du kun referere til eksterne filer ved hjælp af filnavnet og fjerne oplysninger om filstier. |
|
failureCriteria |
objekt | N | Liste over fejlkriterier for belastningstest. | |
autoStop |
streng eller objekt | N | Stop automatisk indlæsningstesten, når fejlprocenten overskrider en værdi. Mulige værdier: - disable: Stop ikke en indlæsningstest automatisk. |
|
properties |
objekt | N | Referencer til JMeter-brugeregenskabsfiler. | |
zipArtifacts |
matrix af streng | N | Angiver listen over zip-artefaktfiler. Hvis filstørrelsen overstiger 50 MB for andre filer end JMeter-scripts og -brugeregenskaber, skal du komprimere dem til en ZIP-fil. Sørg for, at ZIP-filen forbliver under 50 MB. Kun 5 ZIP-artefakter er tilladt med maksimalt 1.000 filer i hver og dekomprimeret størrelse på 1 GB. Gælder kun, når testType: JMX. |
|
splitAllCSVs |
Boolesk | N | Falsk | Opdel CSV-inputfilerne jævnt på tværs af alle forekomster af testprogrammet. |
secrets |
objekt | N | Liste over hemmeligheder, som Apache JMeter-scriptet refererer til. | |
env |
objekt | N | Liste over miljøvariabler, som Apache JMeter-scriptet refererer til. | |
certificates |
objekt | N | Liste over klientcertifikater til godkendelse med programslutpunkter i JMeter-scriptet. | |
keyVaultReferenceIdentity |
streng | N | Ressource-id for den brugertildelt administrerede identitet for at få adgang til hemmelighederne fra din Azure Key Vault. Hvis du bruger en systemadministrert identitet, er disse oplysninger ikke nødvendige. Sørg for at give denne brugertildelt identitetsadgang til din Azure Key Vault. | |
subnetId |
streng | N | Ressource-id for det virtuelle netværksundernet til test af private hostede slutpunkter. Dette undernet er vært for de indsprøjtede testprogram-VM'er. | |
publicIPDisabled |
Boolesk | N | Deaktiver udrulningen af en offentlig IP-adresse, belastningsjustering og netværkssikkerhedsgruppe under test af et privat slutpunkt. |
Følgende YAML-kodestykke indeholder et eksempel på konfiguration af indlæsningstest.
version: v0.1
testId: SampleTest
displayName: Sample Test
description: Load test website home page
testPlan: SampleTest.jmx
testType: JMX
engineInstances: 1
subnetId: /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/sample-rg/providers/Microsoft.Network/virtualNetworks/load-testing-vnet/subnets/load-testing
configurationFiles:
- 'sampledata.csv'
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/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/sample-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/sample-identity
Konfigurer indlæsningsparametre
Hvis du vil simulere brugertrafik for dit program, kan du konfigurere indlæsningsmønsteret og det antal virtuelle brugere, du vil simulere indlæsning for. Azure Load Testing kan skalere antallet af virtuelle brugere, der simulerer trafik til dit program, ved at køre belastningstesten på tværs af mange parallelle testprogramforekomster. Belastningsmønsteret bestemmer, hvordan belastningen fordeles i løbet af belastningstestens varighed. Eksempler på belastningsmønstre er lineære, trinviseeller spidsbelastning.
Afhængigt af typen af belastningstest, URL-baseret eller JMeter-baseret har du forskellige muligheder for at konfigurere målbelastningen og belastningsmønsteret. I følgende tabel vises forskellene mellem de to testtyper.
| Testtype | Antal virtuelle brugere | Indlæs mønster |
|---|---|---|
| URL-baseret (grundlæggende) | Angiv målnummeret for virtuelle brugere i konfigurationen af belastningstesten. | Lineært belastningsmønster baseret på opgangstiden og antallet af virtuelle brugere. |
| URL-baseret (avanceret) | Angiv antallet af testprogrammer og antallet af virtuelle brugere pr. forekomst i konfigurationen af belastningstesten. | Konfigurer belastningsmønsteret (lineær, trin, spidsbelastning). |
| JMeter-baseret | Angiv antallet af testprogrammer i konfigurationen af belastningstesten. Angiv antallet af virtuelle brugere i testscriptet. | Konfigurer indlæsningsmønsteret i testscriptet. |
Konfigurer belastningsparametre for JMeter-baserede test
I forbindelse med GitHub-handlingsarbejdsprocesser konfigurerer du antallet af programforekomster i YAML-testkonfigurationsfilen. Du gemmer konfigurationsfilen til belastningstest sammen med JMeter-testscriptfilen i lageret til kildekontrol.
I følgende eksempel konfigureres en belastningstest, der kører på tværs af 10 parallelle testprogramforekomster.
Konfigurer antallet af forekomster af testprogrammet i indstillingen for engineInstances.
version: v0.1
testId: SampleTestCICD
displayName: Sample test from CI/CD
testPlan: SampleTest.jmx
description: Load test website home page
engineInstances: 10