Uw CI/CD-werkstroom handmatig configureren voor het uitvoeren van belastingstests

U kunt een belastingstest in Azure Load Testing automatiseren door een CI/CD-pijplijn te maken. In dit artikel leert u hoe u GitHub Actions, Azure Pipelines of andere CI-hulpprogramma's handmatig configureert om een bestaande test aan te roepen in Azure Load Testing. Automatiseer een belastingstest om de prestaties en stabiliteit van uw toepassing continu te valideren onder belasting.

Een bestaande belastingstest toevoegen aan een CI/CD-pijplijn:

  • Configureer serviceverificatie zodat het CI-hulpprogramma verbinding kan maken met uw Azure Load Testing-resource.
  • Voeg invoerbestanden voor belastingtests toe aan uw opslagplaats, zoals het JMeter-testscript en de YAML-configuratie voor de belastingstest.
  • Werk de CI/CD-pijplijndefinitie bij om Azure Load Testing aan te roepen.

Vereisten

Serviceverificatie configureren

Als u een belastingstest wilt uitvoeren in uw CI/CD-werkstroom, moet u toestemming verlenen aan de CI/CD-werkstroom om toegang te krijgen tot uw resource voor belastingstests. Maak een service-principal voor de CI/CD-werkstroom en wijs de Azure RBAC-rol Inzender voor belastingtests toe.

Een serviceverbinding maken in Azure Pipelines

In Azure Pipelines maakt u een serviceverbinding in uw Azure DevOps-project voor toegang tot resources in uw Azure-abonnement. Wanneer u de serviceverbinding maakt, maakt Azure DevOps een Microsoft Entra-service-principalobject.

  1. Meld u aan bij uw Azure DevOps-organisatie (https://dev.azure.com/<your-organization>) en selecteer uw project.

    Vervang de tijdelijke aanduiding voor tekst <your-organization> door de project-id.

  2. Selecteer Serviceverbindingen> met Project-instellingen>+ Nieuwe serviceverbinding.

  3. Selecteer in het deelvenster Nieuwe serviceverbinding de Azure Resource Manager en selecteer vervolgens Volgende.

  4. Selecteer de verificatiemethode service-principal (automatisch) en selecteer vervolgens Volgende.

  5. Voer de details van de serviceverbinding in en selecteer Opslaan om de serviceverbinding te maken.

    Veld Waarde
    Bereikniveau Abonnement.
    Abonnement Selecteer het Azure-abonnement dat als host fungeert voor uw resource voor belastingstests.
    Resourcegroep Selecteer de resourcegroep die de resource voor belastingtests bevat.
    Serviceverbindingsnaam Voer een unieke naam in voor de serviceverbinding.
    Toegangsmachtigingen verlenen aan alle pijplijnen Geselecteerd.
  6. Selecteer in de lijst met serviceverbindingen de service die u eerder hebt gemaakt en selecteer vervolgens Service-principal beheren.

    Screenshot that shows selections for managing a service principal.

    Azure Portal wordt geopend in een afzonderlijk browsertabblad en toont de details van de service-principal.

  7. Kopieer in Azure Portal de waarde van de weergavenaam .

    U gebruikt deze waarde in de volgende stap om machtigingen te verlenen voor het uitvoeren van belastingstests aan de service-principal.

Toegang verlenen tot Azure Load Testing

Azure Load Testing maakt gebruik van Azure RBAC om machtigingen te verlenen voor het uitvoeren van specifieke activiteiten op uw resource voor belastingstests. Als u een belastingstest wilt uitvoeren vanuit uw CI/CD-pijplijn, verleent u de rol Inzender voor belastingtests aan de service-principal.

  1. Ga in Azure Portal naar uw Azure Load Testing-resource.

  2. Selecteer Toegangsbeheer (IAM)>Roltoewijzing toevoegen.>

  3. Selecteer op het tabblad Rol de optie Inzender voor belastingtests in de lijst met functierollen.

    Screenshot that shows the list of roles in the Add role assignment page in the Azure portal, highlighting the Load Test Contributor role.

  4. Selecteer leden selecteren op het tabblad Leden en gebruik vervolgens de weergavenaam die u eerder hebt gekopieerd om de service-principal te doorzoeken.

  5. Selecteer de service-principal en selecteer vervolgens Selecteren.

  6. Selecteer Op het tabblad Beoordelen en toewijzen de optie Beoordelen en toewijzen om de roltoewijzing toe te voegen.

U kunt nu de serviceverbinding in uw Azure Pipelines-werkstroomdefinitie gebruiken om toegang te krijgen tot uw Azure Load Testing-resource.

Laadtestbestanden toevoegen in uw opslagplaats

Als u een belastingtest wilt uitvoeren met Azure Load Testing in een CI/CD-werkstroom, moet u alle invoerbestanden voor belastingtests toevoegen in uw opslagplaats voor broncodebeheer.

Als u geen bestaande belastingstest hebt, voegt u de volgende bestanden toe aan uw broncodeopslagplaats:

  • YAML-bestand voor belastingtestconfiguratie. Meer informatie over het maken van een YAML-bestand voor de belastingtestconfiguratie.
  • Testplanbestand. Voeg voor op JMeter gebaseerde tests een JMeter-testscript (JMX bestand) toe. Voeg voor op URL gebaseerde tests een JSON-aanvraagbestand toe.
  • Bestanden met JMeter-gebruikerseigenschappen.
  • Alle invoergegevensbestanden die door uw testplan worden gebruikt. Bijvoorbeeld CSV-gegevensbestanden.

Als u een bestaande belastingstest hebt, kunt u de configuratie-instellingen en alle invoerbestanden rechtstreeks vanuit Azure Portal downloaden. Voer de volgende stappen uit om de invoerbestanden voor een bestaande belastingstest te downloaden in Azure Portal:

  1. Ga in Azure Portal naar uw Azure Load Testing-resource.

  2. Selecteer in het linkerdeelvenster Tests om de lijst met belastingstests weer te geven en selecteer vervolgens uw test.

    Screenshot that shows the list of tests for an Azure Load Testing resource.

  3. Selecteer het beletselteken (...) naast de testuitvoering waarmee u werkt en selecteer vervolgens Invoerbestand downloaden.

    De browser downloadt een gezipte map die de invoerbestanden voor de belastingtest bevat.

    Screenshot that shows how to download the results file for a load test run.

  4. Gebruik een zip-hulpprogramma om de invoerbestanden te extraheren.

    De map bevat de volgende bestanden:

    • config.yaml: het YAML-configuratiebestand voor de belastingstest. U verwijst naar dit bestand in de CI/CD-werkstroomdefinitie.
    • .jmx: het JMeter-testscript
    • Aanvullende invoerbestanden, zoals CSV-bestanden of bestanden met gebruikerseigenschappen die nodig zijn om de belastingstest uit te voeren.
  5. Voer alle geëxtraheerde invoerbestanden door naar uw opslagplaats voor broncodebeheer.

    Gebruik de opslagplaats voor broncode waarin u de CI/CD-pijplijn configureert.

De CI/CD-werkstroomdefinitie bijwerken

Azure Load Testing ondersteunt zowel GitHub Actions als Azure Pipelines voor het uitvoeren van belastingstests.

De Azure Load Testing-extensie voor Azure DevOps installeren

Voor het maken en uitvoeren van een belastingstest maakt de Azure Pipelines-werkstroomdefinitie gebruik van de azure Load Testing-taakextensie van Azure DevOps Marketplace.

  1. Open de azure Load Testing-taakextensie in Azure DevOps Marketplace en selecteer Gratis downloaden.

  2. Selecteer uw Azure DevOps-organisatie en selecteer vervolgens Installeren om de extensie te installeren.

    Als u geen beheerdersbevoegdheden hebt voor de geselecteerde Azure DevOps-organisatie, selecteert u Aanvraag om een beheerder aan te vragen om de extensie te installeren.

De Azure Pipelines-werkstroom bijwerken

Werk uw Azure Pipelines-werkstroom bij om een belastingstest uit te voeren voor uw Azure Load Testing-resource.

  1. Meld u aan bij uw Azure DevOps-organisatie (https://dev.azure.com/<your-organization>) en selecteer uw project.

  2. Selecteer Pijplijnen in het linkernavigatievenster, selecteer uw pijplijn en selecteer vervolgens Bewerken om uw werkstroomdefinitie te bewerken.

    U kunt ook Pijplijn maken selecteren om een nieuwe pijplijn te maken in Azure Pipelines.

  3. Gebruik de AzureLoadTest taak om de belastingstest uit te voeren.

    Geef het configuratiebestand voor de belastingtest op dat u eerder in de loadTestConfigFile eigenschap hebt geëxporteerd.

    Vervang de <load-testing-resource> tijdelijke aanduidingen en <load-testing-resource-group> tekst door de naam van uw Azure Load Testing-resource en de resourcegroep.

        - task: AzureLoadTest@1
          inputs:
            azureSubscription: $(serviceConnection)
            loadTestConfigFile: 'config.yaml'
            loadTestResource: <load-testing-resource>
            resourceGroup: <load-testing-resource-group>
    

    U kunt eventueel parameters of geheimen doorgeven aan de belastingstest met behulp van de env of secrets eigenschap.

  4. Gebruik de taak om de publish testresultaten te publiceren als artefacten in uw Azure Pipelines-werkstroom worden uitgevoerd.

        - publish: $(System.DefaultWorkingDirectory)/loadTest
          artifact: loadTestResults
    

Resultaten van belastingtest weergeven

Wanneer u een belastingstest uitvoert vanuit uw CI/CD-pijplijn, kunt u de samenvattingsresultaten rechtstreeks in het CI/CD-uitvoerlogboek bekijken. Als u de testresultaten hebt gepubliceerd als een pijplijnartefact, kunt u ook een CSV-bestand downloaden voor verdere rapportage.

Screenshot that shows the workflow logging information.

Resources opschonen

Als u niet van plan bent om een van de resources te gebruiken die u hebt gemaakt, verwijdert u deze zodat er geen extra kosten in rekening worden gebracht.

  1. Wijzigingen in Azure Pipelines verwijderen:

    1. Meld u aan bij uw Azure DevOps-organisatie (https://dev.azure.com/<your-organization>) en selecteer uw project.

      Vervang de tijdelijke aanduiding voor tekst <your-organization> door de project-id.

    2. Als u een nieuwe pijplijn hebt gemaakt:

      1. Selecteer Pijplijnen en selecteer vervolgens uw pijplijn.

      2. Selecteer het beletselteken en selecteer vervolgens Verwijderen.

        Screenshot that shows how to delete an Azure Pipelines definition.

      3. Voer de naam van de pijplijn in en selecteer Vervolgens Verwijderen om de pijplijn te verwijderen.

    3. Als u een bestaande werkstroomdefinitie hebt gewijzigd, moet u de wijzigingen voor het uitvoeren van de belastingstest ongedaan maken en de werkstroom opslaan.

  2. Verwijder de serviceverbinding:

    1. Selecteer Project settings>Service-verbindingen en selecteer vervolgens uw serviceverbinding.
    2. Selecteer Verwijderen bewerken>om de serviceverbinding te verwijderen.

Volgende stappen

Ga naar het volgende artikel voor meer informatie over het identificeren van prestatieregressies door testcriteria voor mislukte tests te definiëren en testuitvoeringen te vergelijken.