了解 2023 年 Google I/O 大会上介绍的 Firebase 亮点。了解详情

Sürekli entegrasyon (CI) sistemleriyle test etmeye başlayın

Uygulamanızı herhangi bir sürekli entegrasyon (CI) sistemi kullanarak geliştirirken Firebase Test Lab'ı kullanabilirsiniz. Sürekli entegrasyon sistemleri, uygulama kaynak kodunuzdaki güncellemeleri her kontrol ettiğinizde uygulamanızı otomatik olarak oluşturmanıza ve test etmenize olanak tanır.

Firebase Test Lab'ı Jenkins CI ile Kullanma

Bu bölümde Test Lab'in Jenkins CI ile nasıl kullanılacağı açıklanmaktadır.

Gereksinimler

Firebase Test Lab'ı Jenkins ile kullanabilmeniz için aşağıdaki adımları tamamlamanız gerekir:

  1. gcloud'u kurun. Bir Firebase projesi oluşturmak ve yerel Google Cloud SDK ortamınızı yapılandırmak için gcloud Komut Satırından Firebase Test Lab'i Kullanma bölümündeki talimatları uygulayın.

  2. Bir hizmet hesabı oluşturun ve yetkilendirin. Hizmet hesapları, CI yapılarınızı engelleyebilecek spam kontrollerine veya captcha istemlerine tabi değildir. Google Cloud Console'da Düzenleyici rolüne sahip bir hizmet hesabı oluşturun ve ardından etkinleştirin (nasıl yapılacağını öğrenmek için gcloud auth activ-service-account belgelerine bakın).

  3. Gerekli API'leri etkinleştirin. Hizmet hesabını kullanarak oturum açtıktan sonra: Google Developers Console API Kitaplığı sayfasında , Google Cloud Testing API ve Cloud Tool Results API'yi etkinleştirin. Bu API'leri etkinleştirmek için, bu API adlarını konsolun üst kısmındaki arama kutusuna yazın ve ardından söz konusu API'ye ilişkin genel bakış sayfasında API'yi Etkinleştir'e tıklayın.

Jenkins'i yükleyin ve kurun

Jenkins CI'yi Linux veya Windows üzerinde kurabilir ve kurabilirsiniz. Dosya yollarında eğik çizgi ( / ) kullanımı da dahil olmak üzere, bu kılavuzun belirli ayrıntıları Linux'ta Jenkins CI'yi yüklemeye ve çalıştırmaya özeldir.

Jenkins'i Linux veya Windows çalıştıran bir bilgisayara indirip yüklemek için Jenkins'i Yükleme bölümündeki talimatları izleyin. Jenkins'i yükledikten sonra, kurulumu tamamlamak ve Jenkins kontrol paneline erişmek için Jenkins'i Başlatma ve Jenkins'e Erişme konusundaki talimatları izleyin.

Genel güvenlik ayarlarını yapılandırın

Jenkins, ilk kurulduğunda yapılandırılmış kullanıcı kimlik doğrulaması ve erişim kontrolüne sahip değildir. Jenkins'i Firebase Test Lab ile kullanmadan önce, erişim kontrolünü zorunlu kılmak ve kullanıcıların kimliğini doğrulamak için genel güvenlik ayarlarını yapılandırın.

Genel güvenlik ayarlarını yapılandırmak için

  1. Sunucunuzdaki Jenkins panosuna gidin. Bunu yapmak için, http://<servername>:8080 adresine göz atın; burada <servername>, Jenkins'i kurduğunuz bilgisayarın adıdır.
  2. Jenkins panosunda, Jenkins'i Yönet seçeneğine ve ardından Küresel Güvenliği Yapılandır seçeneğine tıklayın.
  3. Global Güvenliği Yapılandır sayfasında, Güvenliği etkinleştir öğesini ve ardından Kaydet öğesini tıklayın.

Jenkins için güvenlik ayarlarını yapılandırma hakkında daha fazla bilgi için bkz. Hızlı ve Basit Güvenlik , Standart Güvenlik Kurulumu ve Jenkins'i Güvenli Hale Getirme .

Bir Jenkins projesi oluşturun

Ardından, Firebase Test Lab ile uygulamanızın sürekli entegrasyon testini çalıştırmak için bir proje oluşturun.

Bir Jenkins projesi oluşturmak için

  1. Sunucunuzdaki Jenkins panosuna gidin. Bunu yapmak için, http://<servername>:8080 adresine göz atın; burada <servername>, Jenkins'i kurduğunuz bilgisayarın adıdır.
  2. Jenkins kontrol panelinde Yeni Öğe'yi tıklayın.
  3. Öğe adı alanına projeniz için bir ad yazın:
    • Tek bir yapı yapılandırması kullanan bir proje oluşturmak için Serbest Stil projesini seçin.
    • Birden çok farklı yapı yapılandırmasında çalışan bir proje oluşturmak için Çoklu yapılandırma projesi oluştur'u seçin. Uygulamanızı çeşitli derleme yapılandırmalarıyla (birden çok yerel ayar, birden çok Android API düzeyi vb.) derlemeyi planlıyorsanız, çoklu yapılandırma projesi en iyi seçimdir.
  4. Kaydet'i tıklayın.

Projeniz oluşturulduktan sonra, web tarayıcınız projeniz için ana sayfayı görüntüler.

Revizyon kontrolü ve Gradle derleme adımları ekleyin

Bu bölümde, Jenkins'in GitHub gibi revizyon kontrol sistemleriyle nasıl entegre edileceği ve kaynak koddan APK paketleri oluşturmak için Gradle oluşturma adımlarının nasıl ekleneceği açıklanmaktadır.

GitHub ve diğer revizyon kontrol sistemleri ile entegrasyon

Uygulamanızın kaynak kodunu yönetmek için GitHub veya başka bir revizyon kontrol sistemi kullanıyorsanız, Jenkins'i otomatik derlemeler çalıştıracak ve uygulamanızın güncellemeleri her teslim edildiğinde testler yapacak şekilde yapılandırabilirsiniz. Jenkins'i derlemeleri düzenli aralıklarla çalıştıracak şekilde de yapılandırabilirsiniz.

Jenkins'te yapıları yapılandırma hakkında bilgi edinmek için bkz. Otomatik yapıları yapılandırma .

APK paketlerini yeniden oluşturmak için Gradle derleme adımları ekleme

Uygulamanızın kaynak kodunu yönetmek için bir revizyon kontrol sistemi kullanıyorsanız, Jenkins revizyon kontrol sisteminizden kaynak kodunu her indirdiğinde yeni APK ikili dosyaları oluşturmak için bir Gradle oluşturma adımı eklemeniz gerekir.

  1. Uygulamanız için ana dizinde aşağıdaki komutları çalıştırmak üzere bir derleme adımı ekleyin:

    ./gradlew :app:assembleDebug
    ./gradlew :app:assembleDebugAndroidTest
    

  2. Test Lab ile test ederken Gradle tarafından oluşturulan APK paketlerini kullanmak için bir oluşturma adımı ekleyin. Bu yolu, aşağıda sağlanan kabuk komut dosyası örneğinde <local_server_path> olarak kullanabilirsiniz; burada <AppFolder> , uygulamanız için Android Studio proje klasörüdür:

    <AppFolder>/app/build/outputs/apk
    

Jenkins'e Test Lab derleme adımları ekleyin

Artık Test Lab'ı gcloud komut satırını kullanarak çalıştırmak için Jenkins'e bir oluşturma adımı eklemeye hazırsınız.

Bir gcloud derleme adımı eklemek için

  1. Projenizin ana sayfasından Yapılandır'a tıklayın.
  2. Proje yapılandırma sayfasında, Oluştur bölümüne gidin ve ardından Yapı adımı ekle menüsünden Kabuğu çalıştır'ı seçin.

  3. Jenkins Execute kabuk komut penceresinde, sunucudaki örnek uygulamanın yolu için <local_server_path> , uygulamanızın APK'sı için <app_apk> ve uygulamanızın test APK'sı için <app_test_apk> değiştirerek aşağıdakini girin:

    gcloud firebase test android run --app <local_server_path>/<app_apk>.apk
    --test <local_server_path>/<app_test_apk>.apk
    

Test sonuçlarını analiz edin

Test Lab, uygulamanızın testini tamamladıktan sonra, test sonuçlarını Firebase konsolunda veya projenizdeki bir Google Cloud Storage paketinde inceleyebilirsiniz. Test sonuçları verilerini yerel bilgisayarınıza kopyalamak için yukarıda gösterilen kabuk komutuna bir gsutil komutu da ekleyebilirsiniz. Daha fazla bilgi edinmek için Firebase Test Laboratuvarı Sonuçlarını Analiz Etme bölümüne bakın.

Diğer CI sistemleriyle sürekli entegrasyon

Firebase Test Lab'i diğer CI sistemleriyle nasıl kullanacağınızı öğrenmek için belgelerine bakın: