CI sistemleriyle test etmeye başlayın

Uygulamanızı herhangi bir sürekli entegrasyon (CI) sistemini 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'i Jenkins CI ile Kullanma

Bu bölüm, Test Lab'ın Jenkins CI ile nasıl kullanılacağını açıklar.

Gereksinimler

Firebase Test Lab'i Jenkins ile kullanmadan önce 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ı izleyin.

  2. Bir hizmet hesabı oluşturun ve yetkilendirin. Hizmet hesapları, aksi takdirde CI yapılarınızı engelleyebilecek istenmeyen posta denetimlerine veya captcha istemlerine tabi değildir. Google Cloud Console'da Düzenleyici rolüne sahip bir hizmet hesabı oluşturun ve ardından bunu etkinleştirin (nasıl yapılacağını öğrenmek için gcloud auth etkinleştirme-hizmet-hesabı 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 kurun ve kurun

Jenkins CI'yi Linux veya Windows üzerine kurabilir ve kurabilirsiniz. Bu kılavuzun belirli ayrıntıları, dosya yollarında eğik çizgi ( / ) kullanımı da dahil olmak üzere Jenkins CI'nin Linux üzerinde kurulmasına ve çalıştırılmasına özeldir.

Jenkins'i Linux veya Windows çalıştıran bir bilgisayara indirmek ve kurmak için Jenkins'i Yükleme konusundaki talimatları izleyin. Jenkins'i kurduktan sonra, kurulumu tamamlamak ve Jenkins panosuna erişmek için Jenkins'i Başlatma ve 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ına ve erişim denetimine 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://<sunucuadı>:8080'e gidin ; burada <sunucuadı> , Jenkins'i kurduğunuz bilgisayarın adıdır.
  2. Jenkins panosunda, Jenkins'i Yönet 'e ve ardından Küresel Güvenliği Yapılandır 'a tıklayın.
  3. Genel Güvenliği Yapılandır sayfasında, Güvenliği etkinleştir'i ve ardından Kaydet'i 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'in Güvenliğini Sağlama .

Jenkins projesi oluşturun

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

Jenkins projesi oluşturmak için

  1. Sunucunuzdaki Jenkins panosuna gidin. Bunu yapmak için http://<sunucuadı>:8080'e gidin ; burada <sunucuadı> , Jenkins'i kurduğunuz bilgisayarın adıdır.
  2. Jenkins panosunda Yeni Öğe öğesine 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 yapı yapılandırmalarıyla (birden çok yerel ayar, birden çok Android API düzeyi vb.) oluşturmayı 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 projenizin ana sayfasını görüntüler.

Revizyon kontrolü ve Gradle oluşturma adımları ekleyin

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

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 kontrol edildiğinde testler çalıştıracak şekilde yapılandırabilirsiniz. Jenkins'i derlemeleri düzenli aralıklarla çalıştıracak şekilde de yapılandırabilirsiniz.

Jenkins'te derlemeleri yapılandırma hakkında bilgi edinmek için bkz. Otomatik derlemeleri 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 için 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 derleme adımı ekleyin. Bu yolu, aşağıda verilen 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 Laboratuvarı oluşturma adımları ekleyin

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

Bir gcloud derleme adımı eklemek için

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

  3. Jenkins Execute shell 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> koyarak şunu 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: