GitLab CI/CD

Deze handleiding legt uit hoe u de LoadFocus JMeter API Client integreert met GitLab CI/CD voor geautomatiseerde prestatietests.

Installatiestappen

1. Referenties Opslaan als GitLab CI/CD Variabelen

Sla eerst uw LoadFocus API-referenties op als GitLab CI/CD variabelen:

  1. Ga naar uw GitLab project
  2. Navigeer naar Settings > CI/CD > Variables
  3. Voeg de volgende variabelen toe:
    • LOADFOCUS_API_KEY: Uw LoadFocus API-sleutel (markeer als "Masked")
    • LOADFOCUS_TEAM_ID: Uw LoadFocus team-ID

2. Een GitLab CI/CD Pipeline Aanmaken

Maak of werk uw .gitlab-ci.yml-bestand bij in uw repository:

stages:
- build
- test
- performance
- deploy
variables:
NODE_VERSION: "16"
build:
stage: build
image: node:${NODE_VERSION}
script:
- npm install
- npm run build
artifacts:
paths:
- dist/
expire_in: 1 week
test:
stage: test
image: node:${NODE_VERSION}
script:
- npm install
- npm test
performance_test:
stage: performance
image: node:${NODE_VERSION}
script:
# Install LoadFocus JMeter API Client
- npm install -g @loadfocus/loadfocus-api-client
# Configure LoadFocus API Client
- loadfocus-api config set apikey $LOADFOCUS_API_KEY
- loadfocus-api config set teamid $LOADFOCUS_TEAM_ID
# Run Performance Tests
- |
loadfocus-api jmeter run-test \
--name "GitLab_${CI_PROJECT_NAME}_${CI_COMMIT_REF_NAME}" \
--thresholds "avgresponse<=200,errors==0,p95<=250" \
--format json > performance_results.json
artifacts:
paths:
- performance_results.json
expire_in: 1 week
when: always
# Optional: Only run on specific branches
only:
- main
- develop
deploy:
stage: deploy
script:
- echo "Deploying application..."
only:
- main
# Only deploy if all previous stages succeeded
when: on_success

3. Testresultaten Bekijken

Na het uitvoeren van de pipeline:

  1. Ga naar uw GitLab project
  2. Navigeer naar CI/CD > Pipelines
  3. Zoek uw pipeline en klik erop
  4. Ga naar de "performance_test" job
  5. Klik op "Browse" in de rechter zijbalk om artefacten te bekijken
  6. Download en bekijk het bestand performance_results.json

Geavanceerde Configuratie

Omgevingsspecifiek Testen

Voer verschillende prestatietests uit voor verschillende omgevingen met behulp van YAML-ankers en omgevingsspecifieke variabelen.

Parallel Testen

Voer meerdere prestatietests parallel uit door aparte jobs voor API- en UI-prestatietests te definiรซren.

Prestatierapporten Genereren

Genereer HTML-rapporten van JSON-resultaten en publiceer ze als GitLab Pages.

Integratie met GitLab Functies

Merge Request Widgets

Toon prestatietestresultaten in merge requests met behulp van GitLab's JUnit-rapportfunctie.

GitLab Metrieken

Gebruik GitLab's metrieken-functie om prestaties in de loop der tijd te volgen.

GitLab Environments

Koppel prestatietests aan specifieke omgevingen.

Tips voor GitLab CI/CD Integratie

  1. Caching: Cache npm-afhankelijkheden om pipeline-runs te versnellen.

  2. Timeout Instellingen: Stel timeouts in voor langlopende prestatietests.

  3. Handmatige Triggers: Sta toe dat prestatietests handmatig worden gestart.

  4. Dynamische Testconfiguratie: Gebruik GitLab vooraf gedefinieerde variabelen om tests dynamisch te configureren.

  5. Meldingen: Stuur meldingen wanneer prestatietests mislukken.

Voor meer informatie, raadpleeg de GitLab CI/CD documentatie en de LoadFocus API Client documentatie.