TestFlight İle Test Etme

TestFlight, Apple'ın uygulama geliştiricilerine, iOS uygulamalarını beta test etmek için kullanabilecekleri bir hizmet ve uygulamadır. TestFlight, uygulama geliştiricilerinin yeni uygulamalarını veya güncellemelerini gerçek kullanıcılara yönelik beta testlerle değerlendirmeleri ve olası sorunları tespit etmeleri için güçlü bir araçtır.

Kuika hesabı ile Test Flight işlemi yapmak için ilk olarak Apple’ın Apple Developer hesabına sahip olmalısınız.

Apple hesabı içerisinde Identifiers’e tıklayın.

Certificates, Identifiers & Profiles ekranı açılacaktır. Identifiers yanında + ikonuna tıklayın.

Register a new Identifier ekranı açılacıktır. APP IDs ‘i seçin. Ardından Continue butonuna tıklayın.

Ardından App’e tıklayın.

Register an App ID ekranı açılacaktır. Register an Apple ID, bir Apple Kimliği (Apple ID) oluşturur.

Register an App ID ekranında Description, Bundle ID alanları ile gelmektedir.

  • Description (Açıklama): Bu alan, oluşturduğunuz uygulamanın kısa bir açıklamasını veya adını içerir. Açıklama, oluşturulan App ID'nin neyle ilgili olduğunu veya hangi uygulamayı temsil ettiğini belirten metni içerir. Örneğin, "Mobil Fotoğraf Düzenleme Uygulaması" gibi bir açıklama olabilir.
  • Bundle ID (Paket Kimliği): Bundle ID, Apple'ın sıkı güvenlik kontrollerine tabi olduğu bir sistemdir. Bundle ID, sadece belirli bir geliştirici veya şirket tarafından oluşturulan ve dağıtılan belirli bir uygulamayı temsil eder. Her uygulamanın farklı bir Bundle ID'si olmalıdır. Bu, uygulamanın bir kimlik doğrulama mekanizması olarak kullanılır. Bundle ID, ters etki yapmamak için dikkatlice seçilmelidir ve aynı Bundle ID başka bir uygulama tarafından kullanılmamalıdır. Örnek bir Bundle ID şu şekilde görünebilir: com.example.myapp.

Bundle ID işlemi her uygulama için sadece bir kez üretilir ve bir kez kullanılır.

Gerekli alanlar doldurulduktan sonra Continue butonuna tıklayın.

Oluşturulan App ID otomatik olarak listeye eklenmiş olacaktır. Confirm your App ID ile oluşturulan App ID’yi doğrulamalısınız.

App Yaratma

Bu işlem her uygulama için sadece bir kez AppStore Connect web sayfası üzerinden yapılır.

Apps yanında yer alan + ikona tıklayın. Açılır pencere içerisinden New App’e tıklayın.

Açılan ekran üzerinde yeni uygulama oluşturmak aşağıdaki alanların doldurulması gerekmektedir.

  • Platforms (Platformlar): Bu alan, uygulamanızın hangi platformlar için oluşturulduğunu belirtir. Örneğin, iOS veya tvOS gibi platformları seçebilirsiniz.
  • Name (Ad): Uygulamanızın adını buraya girin. Bu ad, uygulamanızın genel adıdır.(App store’da uygulamanız bu isimle görünecektir. İsim değişikliği yapmak isterseniz bu işlemi yayına çıkmadan yapmalısınız.
  • Primary Language (Birincil Dil): Uygulamanızın desteklediği temel dil olarak kullanılacak olan dili seçin. Bu, uygulamanın kullanıcı arabirimi ve metinlerinin hangi dilde olacağını belirler.
  • Bundle ID: Bundle ID, uygulamanızın benzersiz tanımlayıcısıdır. Bu tanımlayıcı, uygulamanızın kimlik doğrulama ve benzersiz kimliğini sağlar. Genellikle ters alan adı sırasıyla eklenen bir tanımlayıcıdır (örneğin, "com.example.myapp").

Uygulamaya eklenen Bundle ID bir daha değiştirilemez.

  • SKU (Stok Keeping Unit - Stok Tutma Birimi): SKU, ürününüzün benzersiz bir kimliği veya numarasıdır.
  • User Access (Kullanıcı Erişimi): Kullanıcı erişimi, uygulamanın gizliliği ve kimin uygulamaya erişebileceği konusunda belirleyici bir rol oynar. Bu alanda uygulamanızı herkes için erişilebilir yapabilir veya belirli bir beta test grubu veya kullanıcılar için sınırlı erişim sağlayabilirsiniz.

Uygulama geliştirme sürecinde gerekli alanlar doldurulduktan sonra Create butonuna tıklayın.

Uygulamanın yaratıldığı ekran açılacaktır.

Test Flight için Platform üzerinde Yapılması Gereken İşlemler

IOS Configuration

Uygulama içerisinde Header içerisinden Configuration Manager modülüne tıklayın.

Configuration Manager isimlendirilmesi TestConfig şeklinde isimlendirme yapıp Create butonuna tıklayın.

Ardından IOS sekmesine tıklayın. Support IOS UI switch’ini aktifleştirin.

Mobile App Settings içerisindeki App Name, Bundle ID, Version alanlarını doldurun.

  • App Name (Uygulama Adı): Uygulamanın kullanıcılar tarafından görünen adıdır. Bu ad, uygulama ikonu üzerinde ve uygulama mağazalarında (örneğin, App Store veya Google Play Store) listelenen yerde görünür. Bu alana uygulamanızın ismini girin.
  • Bundle ID (Paket Kimliği): Uygulamaya bağlantı kuracağınız Bundle ID’yi girin.
  • Version (Sürüm): Uygulamanın sürüm numarasını ifade eder. Bu numara, uygulamanın hangi sürümünün mevcut olduğunu belirtir. Uygulamanın sürüm bilgilerini girin.

Bu ayarlar, mobil uygulamaların yönetimi ve tanıtımı için temel öneme sahiptir. Uygulama adı, kullanıcıların uygulamanızı tanımasına ve indirilmesine yardımcı olurken, Bundle ID uygulamanın benzersiz kimliğini belirler ve Sürüm numarası ise uygulamanın hangi sürümünün kullanıldığını izler.

Gerekli alanlar girildikten sonra App Store Settings içerisinde yer alan açılır menü içerisinden ADD NEW’e tıklayın.

Açılan App Store Connect Api Setting ekranındaki bilgileri uygulamanız doğrultusunda doldurup Create Butona tıklayın.

Ardından Publish işlemleri için roket ikonuna tıklayın. Choose Publish set içerisindeki açılır menüden TestFlight’i ve iOS’u seçip Publish butonuna tıklayın.

Apple uygulamayı derledikten sonra uyarılar gönderebilir. Testflight üzerinden işlem yapmanız gerekebilir. E-posta olarak bildirim gelecektir.

Eğer işlemler doğru ilerletildi ise Successful e-postası iletilecektir.

Missing Compliance uyarısı geldiği durumlarda Missing Compliance yanında yer alan Manage butonuna tıklayın.

Açılan Export Compliance Information ekranında Kuika içerisinde herhangi bir algoritma kullanılmadığından dolayı None of the algorithms mentioned above’u seçip Save butonuna tıklayın.

Save sonrası başarılı olduğuna dair mesaj gelecektir.

Ardından cihazınızda TestFlight’ın kurulu olması gerekmektedir. Bir kere kurulu olması yeterlidir. Ardından View in TestFlight’a tıklayın. Uygulamanız teste hazır durumda olacaktır.

Test Flight Esnasında Olası Hatalar

IOS derleme yapamadığında, ve e-posta gelen kutunuzda aşağıdaki hata görüntülenecektir.

token for App Store Connect API [17:50:07]: Fetching profiles... [17:50:09]: Verifying certificates... [17:50:09]: [33mNo existing profiles found, that match the certificates you have installed locally! Creating a new provisioning profile for you [0m [17:50:09]: [17:50:09]: [33m========================================== [0m [17:50:09]: Could not find App ID with bundle identifier 'com.test_01.TestAppMaymuncuk' [17:50:09]: You can easily generate a new App ID on the Developer Portal using 'produce': [17:50:09]: [17:50:09]: [33mfastlane produce -u

————————————————————————————————————

Insecure world writable dir /Users/kuikateam/temp_alpha in PATH, mode 040757 [31m [!] Could not find App with App Identifier 'com.test.TestAppMaymuncuk' [0m /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/universal-darwin22/rbconfig.rb:21: warning: Insecure world writable dir /Users/kuikateam/temp_alpha in PATH, mode 040757

Bu hatanın nedeni uygulamanın APP STORE’da olmamasıdır.Bunun için her uygulama için 1 kez yapılması gereken Bundle ID alanında hatanın yapılmasıdır.

Test flight’ a çıkan uygulamanın kullanılması

  1. IOS cihaz içerisine Test Flight indirilmelidir.
  2. Test Flight’ ı kullanabilmek için uygulamaya giriş yapılan Apple Kimliğinin (e-posta adresi) store içerisinden invite edilmiş olması gerekmektedir. Invite yapıldığında e-posta adresinize gelen linke tıklamanız ve kabul etmeniz gerekmektedir.
  3. Internal ve External testing group olmak üzere iki çeşit test grubu bulunmaktadır.
  • Internal testing group (iç test grubu), bir şirketin kendi çalışanlarından oluşan bir test ekibidir. Şirket içindeki geliştiriciler ve test uzmanları, yazılım veya ürünün erken aşamalarından itibaren hata ayıklama ve kalite kontrol işlemlerini gerçekleştirirler.
  • External testing group (dış test grubu), şirket dışından, nihai kullanıcılardan veya bağımsız test ekiplerinden oluşur. Public linke sahip herkes erişim sağlayabilmektedir. Bu grup, ürün veya yazılımın kamuya açık sürümlerini test etmek ve gerçek dünya kullanıcı deneyimlerini değerlendirmek için kullanılır.

Eklediğiniz kullanıcı Internal Testing grubu içerisinde ise kişiye, uygulama Testflight’a yüklendiğinde uygulamayı Testflight içinde görebilme ve güncelleme yetkisi verilmektedir.Genel olarak test için Internal Testing Group kullanılır. İhtiyaç olduğunda External Test Group oluşturmak gerekmektedir. Süreç aynı şekilde işletilmektedir.

Versiyon çıkıldığında test uygulamasının devreye alınması (STATUS de gösterir) bir süre içerisinde gerçekleşmektedir. Hangi listenin test için geçerli olacağını “+” ikonuna tıklayarak seçin. Store’un gösterdiği statü onaylanana kadar bekleyin. Bu süre değişkenlik gösterecektir 1-2 saat den 1-2 güne kadar sürebilmektedir. Genellikle Internal Testing listesi External listeye göre daha çabuk onaylanmaktadır.

  • Artık Testflight'a erişiminiz tamamlanmıştır ve uygulamayı tanımladığınız listedeki kişiler test için kullanabilirler.