Azure DevOps
Bu kılavuz, otomatik performans testi için LoadFocus JMeter API Client'ı Azure DevOps ile nasıl entegre edeceğinizi açıklar.
Kurulum Adımları
1. Kimlik Bilgilerini Azure Key Vault'ta Saklayın
Güvenli kimlik bilgisi yönetimi için LoadFocus API kimlik bilgilerinizi Azure Key Vault'ta saklayın:
- Henüz yoksa Azure'da bir Key Vault oluşturun
- Aşağıdaki secrets'ları ekleyin:
loadfocus-api-key: LoadFocus API anahtarınızloadfocus-team-id: LoadFocus takım kimliğiniz
- Pipeline'ınızdan Key Vault'a erişmek için bir hizmet bağlantısı kurun
2. Azure Pipeline Oluşturun
Deponuzda azure-pipelines.yml adında yeni bir dosya oluşturun:
trigger:- main- developpool:vmImage: 'ubuntu-latest'variables:- group: loadfocus-variables # Variable group containing Key Vault referencesstages:- stage: Buildjobs:- job: BuildAndTeststeps:# Your existing build and test steps...- stage: PerformanceTestdependsOn: Buildcondition: succeeded()jobs:- job: RunPerformanceTestssteps:- task: NodeTool@0inputs:versionSpec: '16.x'displayName: 'Install Node.js'- script: |npm install -g @loadfocus/loadfocus-api-clientdisplayName: 'Install LoadFocus JMeter API Client'- script: |loadfocus-api config set apikey $(LOADFOCUS_API_KEY)loadfocus-api config set teamid $(LOADFOCUS_TEAM_ID)displayName: 'Configure LoadFocus API Client'- script: |loadfocus-api jmeter run-test \--name "AzureDevOps_$(Build.Repository.Name)_$(Build.SourceBranchName)" \--thresholds "avgresponse<=200,errors==0,p95<=250" \--format json > $(Build.ArtifactStagingDirectory)/performance_results.jsondisplayName: 'Run Performance Tests'continueOnError: false- task: PublishBuildArtifacts@1inputs:pathtoPublish: '$(Build.ArtifactStagingDirectory)'artifactName: 'performance-test-results'displayName: 'Publish Performance Test Results'- stage: DeploydependsOn: PerformanceTestcondition: succeeded()jobs:- job: DeployApplicationsteps:# Your deployment steps...
3. Key Vault Entegrasyonu ile Değişken Grubu Kurma
- Pipelines > Library > Variable Groups bölümüne gidin
- "loadfocus-variables" adında yeni bir Değişken Grubu oluşturun
- Azure Key Vault'unuza bağlayın
- Key Vault secrets'larınıza bağlayarak aşağıdaki değişkenleri ekleyin:
LOADFOCUS_API_KEY:loadfocus-api-keysecret'ına bağlayınLOADFOCUS_TEAM_ID:loadfocus-team-idsecret'ına bağlayın
Gelişmiş Yapılandırma
YAML Şablonları Kullanma
Yeniden kullanılabilir performans testi adımları için performance-test-template.yml şablon dosyası oluşturun:
parameters:testName: 'Default_Test'thresholds: 'avgresponse<=200,errors==0,p95<=250'waitTimeout: 1800steps:- script: |loadfocus-api jmeter run-test \--name "${{ parameters.testName }}" \--thresholds "${{ parameters.thresholds }}" \--waitTimeout ${{ parameters.waitTimeout }} \--format json > $(Build.ArtifactStagingDirectory)/performance_results.jsondisplayName: 'Run Performance Tests'continueOnError: false
Ardından ana pipeline'ınızda:
- template: performance-test-template.ymlparameters:testName: 'AzureDevOps_$(Build.Repository.Name)_$(Build.SourceBranchName)'thresholds: 'avgresponse<=150,errors==0,p95<=200'waitTimeout: 2400
Azure DevOps Entegrasyonu İçin İpuçları
Paralel İşler: Birden fazla performans testiniz varsa paralel işler kullanmayı düşünün.
Dağıtım Kapıları: Performans testi sonuçlarını bir dağıtım kapısı olarak kullanın.
Özel Kontrol Paneli: Zaman içinde performans testi sonuçlarını görselleştirmek için özel bir kontrol paneli oluşturun.
Bildirimler: Performans testi başarısızlıkları için bildirimler ayarlayın.
Daha fazla bilgi için Azure DevOps dokümantasyonuna ve LoadFocus API Client dokümantasyonuna başvurun.