Yük testlerini çalıştırmak için CI/CD iş akışınızı el ile yapılandırma

Ci/CD işlem hattı oluşturarak Azure Yük Testi'nde yük testlerini otomatikleştirebilirsiniz. Bu makalede GitHub Actions, Azure Pipelines veya diğer CI araçlarını Azure Yük Testi'nde mevcut bir testi çağırmak için el ile yapılandırmayı öğreneceksiniz. Yük altında uygulamanızın performansını ve kararlılığını sürekli doğrulamak için yük testini otomatikleştirin.

CI/CD işlem hattına mevcut bir yük testi eklemek için:

  • CI aracının Azure yük testi kaynağınıza bağlanmasına izin vermek için hizmet kimlik doğrulamasını yapılandırın.
  • JMeter test betiği ve yük testi YAML yapılandırması gibi yük testi giriş dosyalarını deponuza ekleyin.
  • Azure Load Testing'i çağırmak için CI/CD işlem hattı tanımını güncelleştirin.

Önkoşullar

Hizmet kimlik doğrulamayı yapılandırma

CI/CD iş akışınızda yük testi çalıştırmak için, yük testi kaynağınıza erişmek için CI/CD iş akışına izin vermeniz gerekir. CI/CD iş akışı için bir hizmet sorumlusu oluşturun ve Yük Testi Katkıda Bulunanı Azure RBAC rolünü atayın.

Azure Pipelines'da hizmet bağlantısı oluşturma

Azure Pipelines'da, Azure aboneliğinizdeki kaynaklara erişmek için Azure DevOps projenizde bir hizmet bağlantısı oluşturursunuz. Hizmet bağlantısını oluşturduğunuzda Azure DevOps bir Microsoft Entra hizmet sorumlusu nesnesi oluşturur.

  1. Azure DevOps kuruluşunuzda ()https://dev.azure.com/<your-organization> oturum açın ve projenizi seçin.

    Metin yer tutucusunun <your-organization> yerine proje tanımlayıcınızı yazın.

  2. Proje ayarları>Hizmet bağlantıları>+ Yeni hizmet bağlantısı'nı seçin.

  3. Yeni hizmet bağlantısı bölmesinde Azure Resource Manager'ı ve ardından İleri'yi seçin.

  4. Hizmet Sorumlusu (otomatik) kimlik doğrulama yöntemini ve ardından İleri'yi seçin.

  5. Hizmet bağlantısı ayrıntılarını girin ve ardından Kaydet'i seçerek hizmet bağlantısını oluşturun.

    Alan Değer
    Kapsam düzeyi Abonelik.
    Abonelik Yük testi kaynağınızı barındıran Azure aboneliğini seçin.
    Kaynak grubu Yük testi kaynağınızı içeren kaynak grubunu seçin.
    Hizmet bağlantısı adı Hizmet bağlantısı için benzersiz bir ad girin.
    Tüm işlem hatlarına erişim izni verme İşaretlendi.
  6. Hizmet bağlantıları listesinden daha önce oluşturduğunuz bağlantıyı seçin ve ardından Hizmet Sorumlusunu Yönet'i seçin.

    Screenshot that shows selections for managing a service principal.

    Azure portalı ayrı bir tarayıcı sekmesinde açılır ve hizmet sorumlusu ayrıntılarını gösterir.

  7. Azure portalında Görünen ad değerini kopyalayın.

    Sonraki adımda bu değeri hizmet sorumlusuna yük testleri çalıştırma izinleri vermek için kullanırsınız.

Azure Yük Testi'ne erişim izni verme

Azure Yük Testi, yük testi kaynağınızda belirli etkinlikleri gerçekleştirme izinleri vermek için Azure RBAC kullanır. CI/CD işlem hattınızdan yük testi çalıştırmak için hizmet sorumlusuna Yük Testi Katkıda Bulunanı rolünü verirsiniz.

  1. Azure portalında Azure Yük Testi kaynağınıza gidin.

  2. Erişim denetimi (IAM)>Rol ataması ekle'yi>seçin.

  3. Rol sekmesinde, iş işlevi rolleri listesinden Yük Testi Katkıda Bulunanı'nı seçin.

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

  4. Üyeler sekmesinde Üye seç'i seçin ve daha önce kopyaladığınız görünen adı kullanarak hizmet sorumlusunda arama yapın.

  5. Hizmet sorumlusunu ve ardından Seç'i seçin.

  6. Gözden Geçir + ata sekmesinde Gözden geçir ve ata'yı seçerek rol atamasını ekleyin.

Artık Azure yük testi kaynağınıza erişmek için Azure Pipelines iş akışı tanımınızda hizmet bağlantısını kullanabilirsiniz.

Deponuza yük testi dosyaları ekleme

CI/CD iş akışında Azure Yük Testi ile yük testi çalıştırmak için kaynak denetim deponuza tüm yük testi giriş dosyalarını eklemeniz gerekir.

Mevcut bir yük testiniz yoksa aşağıdaki dosyaları kaynak kod deponuza ekleyin:

  • Yük testi yapılandırma YAML dosyası. Yük testi yapılandırma YAML dosyası oluşturmayı öğrenin.
  • Test planı dosyası. JMeter tabanlı testler için bir JMeter test betiği (JMX dosyası) ekleyin. URL tabanlı testler için istekler JSON dosyası ekleyin.
  • Tüm JMeter kullanıcı özellikleri dosyaları.
  • Test planınızın kullandığı tüm giriş veri dosyaları. Örneğin, CSV veri dosyaları.

Mevcut bir yük testimiz varsa yapılandırma ayarlarını ve tüm giriş dosyalarını doğrudan Azure portalından indirebilirsiniz. Azure portalında mevcut bir yük testi için giriş dosyalarını indirmek için aşağıdaki adımları gerçekleştirin:

  1. Azure portalında Azure Yük Testi kaynağınıza gidin.

  2. Sol bölmede Testler'i seçerek yük testlerinin listesini görüntüleyin ve ardından testinizi seçin.

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

  3. Üzerinde çalıştığınız test çalıştırmasının yanındaki üç noktayı (...) seçip Giriş dosyasını indir'i seçin.

    Tarayıcı, yük testi giriş dosyalarını içeren sıkıştırılmış bir klasörü indirir.

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

  4. Giriş dosyalarını ayıklamak için herhangi bir zip aracını kullanın.

    Klasör aşağıdaki dosyaları içerir:

    • config.yaml: yük testi YAML yapılandırma dosyası. Ci/CD iş akışı tanımında bu dosyaya başvurursunuz.
    • .jmx: JMeter test betiği
    • Yük testini çalıştırmak için gereken CSV dosyaları veya kullanıcı özellikleri dosyaları gibi ek giriş dosyaları.
  5. Ayıklanan tüm giriş dosyalarını kaynak denetim deponuza işleyin.

    CI/CD işlem hattını yapılandırdığınız kaynak kod deposunu kullanın.

CI/CD iş akışı tanımını güncelleştirme

Azure Yük Testi, yük testlerini çalıştırmak için hem GitHub Actions'ı hem de Azure Pipelines'ı destekler.

Azure DevOps için Azure Yük Testi uzantısını yükleme

Yük testi oluşturmak ve çalıştırmak için Azure Pipelines iş akışı tanımı, Azure DevOps Marketi'nden Azure Yük Testi görev uzantısını kullanır.

  1. Azure DevOps Market'te Azure Yük Testi görev uzantısını açın ve Ücretsiz edinin'i seçin.

  2. Azure DevOps kuruluşunuzu seçin ve ardından uzantıyı yüklemek için Yükle'yi seçin.

    Seçili Azure DevOps kuruluşunda yönetici ayrıcalıklarınız yoksa Yöneticiden uzantıyı yüklemesini istemek için İstek'i seçin.

Azure Pipelines iş akışını güncelleştirme

Azure Pipelines iş akışınızı, Azure yük testi kaynağınız için bir yük testi çalıştıracak şekilde güncelleştirin.

  1. Azure DevOps kuruluşunuzda ()https://dev.azure.com/<your-organization> oturum açın ve projenizi seçin.

  2. Sol gezinti bölmesinde İşlem Hatları'nı seçin, işlem hattınızı seçin ve ardından düzenle'yi seçerek iş akışı tanımınızı düzenleyin.

    Alternatif olarak, Azure Pipelines'da yeni bir işlem hattı oluşturmak için İşlem Hattı Oluştur'u seçin.

  3. Yük testini AzureLoadTest çalıştırmak için görevi kullanın.

    Özelliğinde daha önce loadTestConfigFile dışarı aktardığınız yük testi yapılandırma dosyasını belirtin.

    <load-testing-resource> ve <load-testing-resource-group> metin yer tutucularını Azure yük testi kaynağınızın ve kaynak grubunun adıyla değiştirin.

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

    İsteğe bağlı olarak, veya secrets özelliğini kullanarak parametreleri veya gizli dizileri yük testine env geçirebilirsiniz.

  4. publish Test sonuçlarını Azure Pipelines iş akışınızda yapıtlar olarak yayımlamak için görevi kullanın.

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

Yük testi sonuçlarını görüntüleme

CI/CD işlem hattınızdan bir yük testi çalıştırdığınızda, özet sonuçlarını doğrudan CI/CD çıkış günlüğünde görüntüleyebilirsiniz. Test sonuçlarını bir işlem hattı yapıtı olarak yayımladıysanız, daha fazla raporlama için bir CSV dosyası da indirebilirsiniz.

Screenshot that shows the workflow logging information.

Kaynakları temizleme

Oluşturduğunuz kaynaklardan hiçbirini kullanmayı planlamıyorsanız, daha fazla ücret ödememek için bunları silin.

  1. Azure Pipelines değişikliklerini kaldırma:

    1. Azure DevOps kuruluşunuzda ()https://dev.azure.com/<your-organization> oturum açın ve projenizi seçin.

      Metin yer tutucusunun <your-organization> yerine proje tanımlayıcınızı yazın.

    2. Yeni bir işlem hattı oluşturduysanız":

      1. İşlem hatları'yı ve ardından işlem hattınızı seçin.

      2. Üç noktayı ve ardından Sil'i seçin.

        Screenshot that shows how to delete an Azure Pipelines definition.

      3. İşlem hattı adını girin ve sil'i seçerek işlem hattını silin.

    3. Mevcut bir iş akışı tanımını değiştirdiyseniz yük testini çalıştırma değişikliklerini geri alın ve iş akışını kaydedin.

  2. Hizmet bağlantısını kaldırın:

    1. Proje ayarları>Hizmet bağlantıları'nı ve ardından hizmet bağlantınızı seçin.
    2. Hizmet bağlantısını kaldırmak için Sil'i Düzenle'yi>seçin.

Sonraki adımlar

Test başarısız ölçütlerini tanımlayarak ve test çalıştırmalarını karşılaştırarak performans regresyonlarını belirlemeyi öğrenmek için sonraki makaleye ilerleyin.