Jenkins

Deze handleiding legt uit hoe u de LoadFocus JMeter API Client integreert met Jenkins voor geautomatiseerde prestatietests.

Installatiestappen

1. Referenties Opslaan in Jenkins

Sla eerst uw LoadFocus API-referenties veilig op in Jenkins:

  1. Navigeer naar Jenkins Dashboard > Manage Jenkins > Manage Credentials
  2. Selecteer het juiste referentiedomein (bijv. global)
  3. Klik op "Add Credentials"
  4. Voeg de volgende referenties toe:
    • Kind: Secret text
    • Scope: Global
    • Secret: Uw LoadFocus API-sleutel
    • ID: loadfocus-api-key
    • Description: LoadFocus API Key
  5. Herhaal voor uw team-ID met ID: loadfocus-team-id

2. Een Jenkins Pipeline Aanmaken

Maak een Jenkinsfile in uw repository:

pipeline {
agent {
docker {
image 'node:16-alpine'
}
}
environment {
LOADFOCUS_API_KEY = credentials('loadfocus-api-key')
LOADFOCUS_TEAM_ID = credentials('loadfocus-team-id')
}
stages {
stage('Build') {
steps {
// Your build steps
sh 'npm install'
sh 'npm run build'
}
}
stage('Test') {
steps {
// Your test steps
sh 'npm test'
}
}
stage('Performance Test') {
steps {
// Install LoadFocus JMeter API Client
sh 'npm install -g @loadfocus/loadfocus-api-client'
// Configure LoadFocus API Client
sh 'loadfocus-api config set apikey $LOADFOCUS_API_KEY'
sh 'loadfocus-api config set teamid $LOADFOCUS_TEAM_ID'
// Run Performance Tests
sh '''
loadfocus-api jmeter run-test \
--name "Jenkins_${JOB_NAME}_${BUILD_NUMBER}" \
--thresholds "avgresponse<=200,errors==0,p95<=250" \
--format json > performance_results.json
'''
// Archive the results
archiveArtifacts artifacts: 'performance_results.json', fingerprint: true
}
}
stage('Deploy') {
when {
expression {
return currentBuild.resultIsBetterOrEqualTo('SUCCESS')
}
}
steps {
// Your deployment steps
echo 'Deploying...'
}
}
}
post {
always {
// Clean up workspace
cleanWs()
}
}
}

3. Jenkins Job Configureren

  1. Maak een nieuwe Pipeline job in Jenkins
  2. Configureer de Pipeline om uw Jenkinsfile te gebruiken
  3. Stel de juiste SCM-configuratie in om uw repository op te halen

Geavanceerde Configuratie

Declaratieve Pipeline met Parallel Testen

Voer meerdere prestatietests parallel uit met behulp van het parallel blok in Jenkins Pipeline.

Scripted Pipeline

Gebruik voor meer flexibiliteit een scripted pipeline met withCredentials en handmatige controle over de teststroom.

Gedeelde Bibliotheek

Maak een gedeelde bibliotheek voor herbruikbare prestatietests die u kunt aanroepen vanuit elke Jenkinsfile.

Integratie met Jenkins Plugins

Performance Plugin

Gebruik de Jenkins Performance Plugin om testresultaten te visualiseren door LoadFocus-resultaten te converteren naar een door de plugin ondersteund formaat.

E-mail Meldingen

Stuur e-mailmeldingen met testresultaten met behulp van de emailext stap.

Tips voor Jenkins Integratie

  1. Timeout Afhandeling: Stel timeouts in voor langlopende prestatietests.

  2. Voorwaardelijke Uitvoering: Voer prestatietests alleen uit op specifieke branches.

  3. Geplande Tests: Voer prestatietests uit volgens een schema met cron triggers.

  4. Geparametriseerde Tests: Sta aanpassing van testparameters toe via pipeline-parameters.

Voor meer informatie, raadpleeg de Jenkins documentatie en de LoadFocus API Client documentatie.