Belangrijkste concepten voor nieuwe Azure Load Testing-gebruikers
Meer informatie over de belangrijkste concepten en onderdelen van Azure Load Testing. Met deze informatie kunt u effectiever een belastingstest instellen om prestatieproblemen in uw toepassing te identificeren.
Algemene concepten van belastingstests
Meer informatie over de belangrijkste concepten met betrekking tot het uitvoeren van belastingstests.
Virtuele gebruikers
Een virtuele gebruiker voert een bepaalde testcase uit op uw servertoepassing en wordt onafhankelijk van andere virtuele gebruikers uitgevoerd. U kunt meerdere virtuele gebruikers gebruiken om gelijktijdige verbindingen met uw servertoepassing te simuleren.
Apache JMeter verwijst ook naar virtuele gebruikers als threads. In het JMeter-testscript kunt u met een threadgroepelement de groep virtuele gebruikers opgeven. Meer informatie over threadgroepen in de Apache JMeter-documentatie.
Het totale aantal virtuele gebruikers voor uw belastingstest is afhankelijk van het aantal virtuele gebruikers in het testscript en het aantal exemplaren van de testengine.
De formule is: Totaal aantal virtuele gebruikers = (virtuele gebruikers in het JMX-bestand) * (aantal testengine-exemplaren).
U kunt het doelaantal virtuele gebruikers bereiken door het aantal exemplaren van de testengine, het aantal virtuele gebruikers in het testscript of een combinatie van beide te configureren.
Opstarttijd
De opstarttijd is de hoeveelheid tijd die nodig is om het volledige aantal virtuele gebruikers voor de belastingtest te bereiken. Als het aantal virtuele gebruikers 20 is en de opstarttijd 120 seconden is, duurt het 120 seconden om alle 20 virtuele gebruikers te bereiken. Elke virtuele gebruiker start 6 (120/20) seconden nadat de vorige gebruiker is gestart.
Responstijd
De reactietijd van een afzonderlijke aanvraag, of verstreken tijd in JMeter, is de totale tijd van vlak voordat de aanvraag wordt verzonden naar net nadat het laatste antwoord is ontvangen. De reactietijd bevat niet de tijd om het antwoord weer te geven. Clientcode, zoals JavaScript, wordt niet verwerkt tijdens de belastingstest.
Latentie
De latentie van een afzonderlijke aanvraag is de totale tijd van vlak voordat de aanvraag wordt verzonden naar net nadat het eerste antwoord is ontvangen. Latentie omvat alle verwerking die nodig is voor het samenstellen van de aanvraag en het samenstellen van het eerste deel van het antwoord.
Aanvragen per seconde (RPS)
Aanvragen per seconde (RPS) of doorvoer is het totale aantal aanvragen voor de servertoepassing die uw belastingtest per seconde genereert.
De formule is: RPS = (aantal aanvragen) / (totale tijd in seconden).
De tijd wordt berekend vanaf het begin van de eerste steekproef tot het einde van de laatste steekproef. Deze tijd omvat intervallen tussen voorbeelden, bijvoorbeeld als het testscript timers bevat.
Een andere manier om de RPS te berekenen, is gebaseerd op de gemiddelde latentie van de toepassing en het aantal virtuele gebruikers. Als u een specifiek aantal RPS wilt simuleren met een belastingstest, gezien de latentie van de toepassing, kunt u vervolgens het vereiste aantal virtuele gebruikers berekenen.
De formule is: Virtuele gebruikers = (RPS) * (latentie in seconden).
Als u bijvoorbeeld een toepassingslatentie van 20 milliseconden (0,02 seconden) gebruikt om 100.000 RPS te simuleren, moet u de belastingstest configureren met 2000 virtuele gebruikers (100.000 * 0,02).
Onderdelen van Azure Load Testing
Meer informatie over de belangrijkste concepten en onderdelen van Azure Load Testing. In het volgende diagram ziet u een overzicht van de relatie tussen de verschillende concepten.
Resource voor belastingstests
De Azure Load Testing-resource is de resource op het hoogste niveau voor uw belastingtestactiviteiten. Deze resource biedt een gecentraliseerde locatie voor het weergeven en beheren van belastingstests, testresultaten en gerelateerde artefacten.
Wanneer u een belastingtestresource maakt, geeft u de locatie op, waarmee de locatie van de testengines wordt bepaald. Azure Load Testing versleutelt automatisch alle artefacten in uw resource. U kunt kiezen tussen door Microsoft beheerde sleutels of uw eigen door de klant beheerde sleutels gebruiken voor versleuteling.
Als u een belastingstest voor uw toepassing wilt uitvoeren, voegt u een test toe aan uw resource voor belastingstests. Een resource kan nul of meer tests bevatten.
U kunt op rollen gebaseerd toegangsbeheer van Azure gebruiken om toegang te verlenen tot uw resource voor belastingtests en gerelateerde artefacten.
Met Azure Load Testing kunt u beheerde identiteiten gebruiken voor toegang tot Azure Key Vault voor het opslaan van parameters of certificaten voor belastingtestgeheimen. U kunt een door de gebruiker toegewezen of door het systeem toegewezen beheerde identiteit gebruiken.
Testen
Een test beschrijft de configuratie van de belastingstest voor uw toepassing. U voegt een test toe aan een bestaande Azure Load Testing-resource.
Een test bevat een testplan, waarin de stappen voor het aanroepen van het toepassingseindpunt worden beschreven. U kunt het testplan op drie manieren definiëren:
- Upload een JMeter-testscript.
- Upload een locust-testscript.
- Geef de lijst met URL-eindpunten op die u wilt testen.
Azure Load Testing ondersteunt alle communicatieprotocollen die JMeter ondersteunt, niet alleen op HTTP gebaseerde eindpunten. U kunt bijvoorbeeld lezen van of schrijven naar een database of berichtenwachtrij in het testscript.
Azure Load Testing biedt momenteel geen ondersteuning voor andere testframeworks dan Apache JMeter en Locust.
De test geeft ook de configuratie-instellingen voor het uitvoeren van de belastingstest op:
- Belastingtestparameters, zoals omgevingsvariabelen, geheimen en certificaten.
- Laad de configuratie om uw belastingstest uit te schalen voor meerdere testengine-exemplaren.
- Mislukte criteria om te bepalen wanneer de test moet slagen of mislukken.
- Bewakingsinstellingen voor het configureren van de lijst met azure-app-onderdelen en metrische resourcegegevens die tijdens de testuitvoering moeten worden bewaakt .
Daarnaast kunt u CSV-invoergegevensbestanden uploaden en configuratiebestanden testen naar de belastingstest.
Wanneer u een test start, implementeert Azure Load Testing het testscript, gerelateerde bestanden en configuratie voor de testengineexemplaren. De exemplaren van de testengine initiëren vervolgens het testscript om de belasting van de toepassing te simuleren.
Telkens wanneer u een test start, maakt Azure Load Testing een testuitvoering en koppelt u deze aan de test.
Testrun
Een testuitvoering vertegenwoordigt één uitvoering van een belastingstest. Wanneer u een test uitvoert, bevat de testuitvoering een kopie van de configuratie-instellingen van de bijbehorende test.
Nadat de testuitvoering is voltooid, kunt u de resultaten van de belastingtest bekijken en analyseren in het Dashboard Belasting testen in Azure Portal.
U kunt ook de testlogboeken downloaden en het testresultatenbestand exporteren.
Belangrijk
Wanneer u een test bijwerkt, nemen de bestaande testuitvoeringen niet automatisch de nieuwe instellingen van de test over. De nieuwe instellingen worden alleen gebruikt door nieuwe testuitvoeringen wanneer u de test uitvoert. Als u een bestaande testuitvoering opnieuw uitvoert, worden de oorspronkelijke instellingen van de testuitvoering gebruikt.
Testengine
Een testengine is een computerinfrastructuur die wordt beheerd door Microsoft die het testscript uitvoert. De exemplaren van de testengine voeren het testscript parallel uit. U kunt de belastingstest uitschalen door het aantal test-engineexemplaren te configureren. Meer informatie over het configureren van het aantal virtuele gebruikers of het simuleren van een doelaantal aanvragen per seconde.
De testengines worden gehost op dezelfde locatie als uw Azure Load Testing-resource. U kunt de Azure-regio configureren wanneer u de Azure-resource voor belastingstests maakt.
Terwijl het testscript wordt uitgevoerd, verzamelt en aggregeert Azure Load Testing de testframeworklogboeken van alle test-engineexemplaren. U kunt de logboeken downloaden voor het analyseren van fouten tijdens de belastingstest.
App-onderdeel
Wanneer u een belastingstest uitvoert voor een door Azure gehoste toepassing, kunt u metrische resourcegegevens bewaken voor de verschillende Azure-toepassingsonderdelen (metrische gegevens aan de serverzijde). Terwijl de belastingstest wordt uitgevoerd en na voltooiing van de test, kunt u de metrische resourcegegevens bewaken en analyseren in het dashboard Azure Load Testing.
Wanneer u een belastingtest maakt of bijwerkt, kunt u de lijst met app-onderdelen configureren die door Azure Load Testing worden bewaakt. U kunt de lijst met standaardresourcegegevens voor elk app-onderdeel wijzigen.
Meer informatie over welke Azure-resourcetypen door Azure Load Testing worden ondersteund.
Metrische gegevens voor
Tijdens een belastingstest verzamelt Azure Load Testing metrische gegevens over de testuitvoering. Er zijn twee typen metrische gegevens:
Metrische gegevens aan de clientzijde worden gerapporteerd door de testengines . Deze metrische gegevens omvatten het aantal virtuele gebruikers, de reactietijd van de aanvraag, het aantal mislukte aanvragen of het aantal aanvragen per seconde. U kunt testfoutencriteria definiëren op basis van deze metrische gegevens aan de clientzijde.
Metrische gegevens aan de serverzijde zijn beschikbaar voor door Azure gehoste toepassingen en bieden informatie over uw Azure-toepassingsonderdelen. Azure Load Testing kan worden geïntegreerd met Azure Monitor, waaronder Application Insights en Container Insights, om details van de Azure-services vast te leggen. Afhankelijk van het type service zijn er verschillende metrische gegevens beschikbaar. Metrische gegevens kunnen bijvoorbeeld zijn voor het aantal databaseleesbewerkingen, het type HTTP-antwoorden of het verbruik van containerresources.
Gerelateerde inhoud
U kent nu de belangrijkste concepten van Azure Load Testing om te beginnen met het maken van een belastingstest.
- Meer informatie over hoe Azure Load Testing werkt.
- Meer informatie over het maken en uitvoeren van een op URL gebaseerde belastingstest voor een website.
- Meer informatie over het identificeren van een prestatieknelpunt in een Azure-toepassing.
- Meer informatie over het instellen van geautomatiseerde regressietests met CI/CD.