Mobil uygulama test süreci, uygulamanın sadece “açılıyor mu?” sorusuna cevap vermez. Uygulamanın farklı cihazlarda, yavaş internet koşullarında, hatalı kullanıcı davranışlarında, mağaza incelemesinde ve gerçek kullanıcı trafiğinde nasıl davrandığını ölçer.
Bir mobil uygulama projesinde tasarım iyi, backend güçlü, arayüz modern olabilir. Fakat ödeme ekranı zayıf bağlantıda takılıyorsa, bildirimler yanlış kullanıcıya gidiyorsa veya iOS izin metinleri eksik olduğu için uygulama App Store’dan geri dönüyorsa proje teknik olarak tamamlanmış sayılmaz.
Atalay Tech tarafında mobil uygulama, web platformu, yönetim paneli ve AI entegrasyonu içeren projelerde test süreci ayrı bir teslim kalemi gibi düşünülür. Çünkü iyi test edilmeyen bir uygulama yalnızca hata üretmez; destek yükünü artırır, mağaza puanını düşürür, marka güvenini zedeler ve geliştirme maliyetini sonradan büyütür.
Bu rehber, mobil uygulama geliştirme sürecinde testin hangi aşamada başladığını, hangi test türlerinin yapılması gerektiğini ve yayın öncesi kontrolün nasıl planlanacağını anlatır. Satın alma niyetindeki kullanıcılar için ana karar sayfası hizmet sayfasıdır; bu içerik ise test kavramını teknik ve operasyonel olarak netleştirmek için hazırlanmıştır.
Mobil uygulama test süreci nedir?
Mobil uygulama test süreci; uygulamanın işlev, performans, güvenlik, kullanılabilirlik, cihaz uyumluluğu, API davranışı ve mağaza uygunluğu açısından sistematik şekilde kontrol edilmesidir.
Bu süreç tek bir test günüyle sınırlı değildir. Doğru yaklaşımda test, keşif aşamasında kullanıcı senaryolarının yazılmasıyla başlar, tasarım prototipinde devam eder, geliştirme sırasında otomatik ve manuel kontrollerle ilerler, yayın sonrası hata izleme ve bakım ile sürer.
Örneğin randevu tabanlı bir sağlık uygulamasında test sadece “randevu oluştur” butonunu denemek değildir. Aynı kullanıcının randevuyu iptal etmesi, hekimin saat değiştirmesi, bildirim gitmesi, ödeme iadesi oluşması, internet kesilmesi ve yönetim panelinde raporun doğru görünmesi birlikte test edilmelidir.
Google, Android uygulama kalitesi için çökme oranı, ANR, izin kullanımı, performans ve temel kullanıcı akışlarını doğrudan kalite sinyalleri arasında değerlendirir. Android tarafındaki güncel kalite kriterleri için Android Developers Core App Quality rehberi iyi bir referanstır. Apple tarafında ise uygulamalar App Store incelemesinde güvenlik, performans, tasarım, iş modeli ve hukuki uygunluk başlıklarıyla değerlendirilir; detaylar Apple App Review Guidelines içinde açıklanır.
Test süreci hangi aşamalarda yapılır?
Mobil uygulama test süreci, geliştirme bittikten sonra başlayan bir “temizlik işi” değildir. En sağlıklı model, her proje aşamasına uygun test kontrolü koymaktır.
| Aşama | Test odağı | Somut kontrol örneği |
|---|
| Keşif | Senaryo doğrulama | Kullanıcı, admin ve sistem rollerinin akışları çıkarılır |
| Tasarım | UX ve prototip testi | Form adımları, boş durumlar, hata mesajları incelenir |
| MVP geliştirme | Fonksiyonel test | Kayıt, giriş, listeleme, ödeme, bildirim gibi çekirdek akışlar denenir |
| Entegrasyon | API ve veri testi | Mobil uygulama, backend ve yönetim paneli aynı veriyi doğru işler |
| Yayın öncesi | Cihaz, mağaza, güvenlik testi | iOS/Android izinleri, crash, performans, KVKK metinleri kontrol edilir |
| Yayın sonrası | İzleme ve bakım | Crash raporları, kullanıcı geri bildirimleri, sürüm notları takip edilir |
Bu tablo özellikle MVP projelerde önemlidir. Çünkü hızlı çıkmak isteyen ekipler çoğu zaman test süresini kısaltır. Kısaltılması gereken kısım test değil, kapsamdır. Yani 40 ekranlı hatalı bir uygulama yerine 12 ekranlı ama stabil bir MVP daha doğru karardır.
Atalay Tech’in mobil projelerde tercih ettiği yaklaşım, test senaryolarını daha ilk sprintlerde çıkarmaktır. Böylece geliştirme ekibi yalnızca “özelliği yapmak” için değil, “özelliği kanıtlanabilir şekilde çalıştırmak” için ilerler.
Mobil uygulamada hangi test türleri yapılmalıdır?
Her uygulama aynı test derinliğine ihtiyaç duymaz. Bir içerik uygulaması ile finansal işlem yapan bir uygulamanın test kapsamı aynı olmamalıdır. Yine de çoğu profesyonel mobil projede aşağıdaki test türleri temel kabul edilir.
| Test türü | Ne kontrol edilir? | Hangi projelerde kritik? |
|---|
| Fonksiyonel test | Ekranlar, butonlar, formlar, kullanıcı akışları | Tüm mobil uygulamalar |
| UI/UX testi | Kullanılabilirlik, okunabilirlik, boş/hata durumları | Marketplace, randevu, sosyal uygulamalar |
| API testi | Veri gönderme, hata kodları, timeout, yetkilendirme | Backend bağlantılı tüm uygulamalar |
| Performans testi | Açılış süresi, liste yükleme, animasyon akıcılığı | İçerik, video, e-ticaret, sosyal ağ |
| Güvenlik testi | Token, yetki, veri saklama, SSL, oturum yönetimi | Sağlık, finans, B2B, üyelikli sistemler |
| Cihaz testi | Farklı ekran boyutu, OS versiyonu, üretici farkı | iOS ve Android birlikte çıkan uygulamalar |
| Mağaza testi | App Store / Google Play uygunluğu | Yayına çıkacak tüm uygulamalar |
| Regresyon testi | Yeni geliştirme eski özelliği bozdu mu? | Sürekli güncellenen ürünler |
Buradaki en kritik ayrım şudur: Test türleri birbirinin yerine geçmez. Fonksiyonel testten geçen bir uygulama güvenli olmayabilir. Güvenlik testinden geçen bir uygulama kötü UX yüzünden kullanıcı kaybedebilir. Cihaz testinden geçen bir uygulama mağaza izin metinleri eksik olduğu için reddedilebilir.
Özellikle API entegrasyonu olan projelerde mobil test, backend testinden ayrı düşünülemez. Mobil uygulama 200 OK cevabı alıyor olabilir; fakat yanlış kullanıcıya ait siparişi gösteriyorsa test başarısızdır. Bu yüzden mobil, backend ve yönetim paneli aynı senaryo içinde birlikte kontrol edilmelidir.
Gerçekçi bir test senaryosu nasıl yazılır?
Test senaryosu, geliştiricinin veya test eden kişinin neyi, hangi veriyle, hangi sonuç beklentisiyle deneyeceğini açıkça tarif eder. “Login test edilecek” gibi genel ifadeler zayıftır. İyi senaryo, koşul ve beklenen sonucu birlikte verir.
Örnek persona üzerinden düşünelim:
Ayşe, 28 yaşında freelance tasarımcı. Bir hizmet uygulamasında müşteri hesabı açıyor, ödeme yapıyor, teslim tarihini takip ediyor ve destek talebi oluşturuyor. Mobil internet kullanıyor, bazen bağlantısı zayıf, iPhone kullanıyor ama müşterilerinin bir kısmı Android cihazdan işlem yapıyor.
Bu persona için test senaryoları şöyle yazılabilir:
- Ayşe yanlış şifreyle giriş yaptığında uygulama hesabı kilitlemeden anlamlı hata mesajı göstermeli.
- Ayşe ödeme ekranında interneti kapatırsa ödeme sonucu belirsiz kalmamalı; işlem tekrar sorgulanmalı.
- Ayşe destek talebi açtığında yönetim panelinde doğru kullanıcı, doğru tarih ve doğru kategori görünmeli.
- Bildirim izni kapalıysa uygulama kullanıcıyı zorlamamalı; alternatif bilgilendirme göstermeli.
- Aynı hesap iki cihazda açıksa oturum yönetimi tutarlı davranmalı.
Bu seviye detay, test sürecini kişisel yorumdan çıkarıp ölçülebilir hale getirir. Atalay Tech projelerinde kullanıcı, admin ve sistem rollerinin ayrı ayrı yazılması bu yüzden önemlidir. Çünkü hata çoğu zaman tek ekranda değil, roller arasındaki veri geçişinde çıkar.
Mobil uygulama test sürecinde cihaz çeşitliliği önemli bir maliyet kalemidir. iOS tarafında model sayısı daha sınırlı olsa da ekran boyutu, iOS sürümü ve güvenlik izinleri değişir. Android tarafında üretici farkı, ekran oranı, işletim sistemi sürümü, bellek seviyesi ve arka plan kısıtları daha geniş bir test matrisi oluşturur.
| Test alanı | iOS tarafı | Android tarafı |
|---|
| Cihaz çeşitliliği | Daha kontrollü | Çok daha geniş |
| Mağaza incelemesi | App Review daha sıkı yorumlanabilir | Politika ve hedef SDK kontrolleri öne çıkar |
| Bildirim davranışı | İzin ve odak modları kritik | Üreticiye göre arka plan kısıtları değişebilir |
| Performans | Model bazlı stabil ölçüm kolay | Düşük RAM cihazlarda ek test gerekir |
| Yayın öncesi dağıtım | TestFlight | Internal, closed veya open testing |
Burada amaç piyasadaki her cihazı tek tek test etmek değildir. Ama hedef kullanıcı kitlesine göre mantıklı bir cihaz matrisi kurulmalıdır. Türkiye’de geniş kitleye açılacak bir uygulamada yalnızca son model iPhone ile test yapmak gerçekçi değildir. Orta segment Android cihaz, küçük ekranlı iPhone, büyük ekranlı Android ve güncel OS sürümleri mutlaka denenmelidir.
Google Play tarafında bazı geliştirici hesapları için yayın öncesi test gereksinimleri bulunur; Google’ın ilgili açıklaması Play Console testing requirements sayfasında yer alır. App Store tarafında ise TestFlight, yayın öncesi beta dağıtım için standart kanallardan biridir.
Mobil kullanıcı sabırsızdır. Uygulama açılışında boş ekran uzun sürüyorsa, liste ekranı geç yükleniyorsa veya animasyonlar takılıyorsa kullanıcı hatayı teknik bir sorun olarak değil, ürün kalitesizliği olarak algılar.
Performans testinde özellikle şu alanlar ölçülmelidir:
- İlk açılış süresi
- Login sonrası ana ekranın yüklenme süresi
- Liste ve arama ekranlarında veri yükleme davranışı
- Görsel ve video boyutları
- Offline veya zayıf internet senaryosu
- Bellek tüketimi
- Arka plandan geri dönme davranışı
- Push notification sonrası doğru ekrana yönlenme
Örneğin video içerikli bir eğitim uygulamasında test sadece videonun oynayıp oynamadığını kontrol etmez. 4G bağlantıda ilk oynatma süresi, Wi-Fi’da kalite geçişi, ekran kilitlenince davranış, kulaklık çıkarılınca oynatma durumu ve CDN bağlantısı birlikte incelenmelidir.
Benzer şekilde e-ticaret benzeri bir uygulamada ürün görselleri sıkıştırılmamışsa test ortamında fark edilmeyen sorun gerçek kullanıcı trafiğinde yüksek veri tüketimi ve yavaş listeleme olarak geri döner. Bu da dönüşüm oranını düşürür.
Güvenlik ve KVKK testleri neden ayrı ele alınmalı?
Mobil uygulama güvenliği, yalnızca backend tarafında şifreleme yapmakla bitmez. Mobil cihaz kullanıcının elindedir; APK/IPA paketleri analiz edilebilir, cihaz kaybolabilir, oturum token’ı kötü saklanabilir, API uçları manipüle edilebilir.
OWASP’ın mobil güvenlik yaklaşımı, mobil uygulamalarda kimlik doğrulama, veri saklama, ağ iletişimi, platform etkileşimi ve tersine mühendislik gibi alanları ayrı başlıklar altında değerlendirir. Daha derin teknik referans için OWASP Mobile Application Security Testing Guide incelenebilir.
Güvenlik testlerinde özellikle şu kontroller yapılmalıdır:
- Token cihazda güvenli saklanıyor mu?
- Kullanıcı başka kullanıcının verisine erişebiliyor mu?
- API yetkilendirmesi sadece mobil arayüze mi güveniyor?
- SSL/TLS yapılandırması doğru mu?
- Debug log’larında kişisel veri var mı?
- Üretim paketinde test anahtarı, demo endpoint veya açık hata mesajı kalmış mı?
- Hesap silme, izin yönetimi ve aydınlatma metni akışı doğru mu?
KVKK tarafında teknik test ile hukuki metin birlikte düşünülmelidir. Kullanıcıdan konum izni alınıyorsa uygulama gerçekten bu veriye ihtiyaç duyuyor mu? Kayıt sırasında telefon numarası isteniyorsa bu veri hangi amaçla kullanılıyor? Hesap silme talebi sonrasında mobil, backend ve yönetim paneli tarafında hangi kayıtlar korunuyor, hangileri siliniyor?
Bu konuyu daha teknik açıdan ele almak isteyenler için mobil uygulama güvenliği içeriği de destekleyici bir rehberdir.
Yayın öncesi kontrol listesi nasıl hazırlanır?
Yayın öncesi test, geliştirme ekibinin “bitti” dediği nokta ile mağazaya gönderim arasındaki en kritik filtredir. Bu aşamada amaç yeni özellik eklemek değil, yayın riskini azaltmaktır.
| Kontrol başlığı | Yayın öncesi sorulacak soru | Risk |
|---|
| Kimlik doğrulama | Login, kayıt, şifre sıfırlama stabil mi? | Kullanıcı uygulamaya giremez |
| Yetkilendirme | Kullanıcı sadece kendi verisini mi görüyor? | Veri ihlali |
| Ödeme | Başarılı, başarısız ve iptal senaryosu net mi? | Gelir ve güven kaybı |
| Bildirim | Doğru kullanıcıya doğru içerik gidiyor mu? | Yanlış bilgilendirme |
| Mağaza metinleri | İzin açıklamaları ve ekran görüntüleri uyumlu mu? | App Store / Play Store ret riski |
| Performans | Ana akışlar yavaş bağlantıda çalışıyor mu? | Terk oranı artışı |
| Hata izleme | Crash raporlama ve log seviyesi hazır mı? | Yayın sonrası körlük |
| Destek süreci | Kullanıcı hata bildirince ekip nasıl aksiyon alacak? | Operasyonel kaos |
Bu kontrol listesi her proje için özelleştirilmelidir. Bir B2B saha uygulamasında offline veri senkronizasyonu kritik olabilir. Bir sosyal ağ uygulamasında içerik moderasyonu ve bildirim yoğunluğu öne çıkar. Bir randevu uygulamasında saat çakışması, iptal kuralları ve takvim entegrasyonu testin merkezine alınmalıdır.
Yayın sonrası süreç de en az yayın öncesi kadar önemlidir. Atalay Tech bu noktada teknik destek ve bakım yapısını ayrı ele alır; çünkü uygulama mağazaya çıktıktan sonra gerçek kullanıcı verisiyle yeni davranışlar ortaya çıkar.
Mobil uygulama test süreci maliyeti neye göre değişir?
Test maliyeti; uygulamanın ekran sayısı, kullanıcı rolü, API yoğunluğu, ödeme/abonelik yapısı, cihaz matrisi, güvenlik gereksinimi ve yayın takvimine göre değişir. Aşağıdaki aralıklar Türkiye’de profesyonel ajans süreci için tahmini bilgilendirme amaçlıdır; kesin teklif yerine kapsam okuması gibi düşünülmelidir.
| Proje tipi | Test kapsamı | Tahmini test süresi | Tahmini test maliyeti |
|---|
| MVP mobil uygulama | Temel akış, 3-5 cihaz, mağaza ön kontrol | 3-7 iş günü | 35.000 - 90.000 TL |
| Orta ölçekli uygulama | API, rol bazlı senaryo, performans, regresyon | 7-15 iş günü | 90.000 - 220.000 TL |
| Kurumsal mobil uygulama | Güvenlik, çoklu rol, yönetim paneli, kapsamlı cihaz matrisi | 15-30 iş günü | 220.000 - 600.000 TL+ |
| Finans/sağlık hassasiyeti olan uygulama | KVKK, güvenlik, log, yetki, denetim izi | 20-45 iş günü | 350.000 TL’den başlayabilir |
Bu tablo, yalnızca test hizmeti gibi düşünülmemelidir. Test süreci çoğu zaman geliştirme, hata düzeltme, tekrar test, mağaza hazırlığı ve yayın sonrası izleme ile iç içedir.
mobil uygulama fiyatları sayfası, uygulama kapsamına göre daha geniş proje bütçesi hakkında fikir verir. Test maliyeti toplam bütçenin içinde küçük görünebilir; fakat hatalı yayın sonrası müşteri kaybı, düşük mağaza puanı ve acil düzeltme maliyeti test bütçesinden çok daha pahalı olabilir.
MVP, orta ölçek ve kurumsal projede test farkı
Her mobil uygulama aynı derinlikte test edilmemelidir. Bir MVP’de amaç fikri hızlı ve güvenli şekilde doğrulamaktır. Kurumsal projede ise ölçek, rol yönetimi, raporlama, SLA ve entegrasyon güvenilirliği daha fazla önem kazanır.
| Kriter | MVP | Orta ölçek | Kurumsal |
|---|
| Kullanıcı rolü | 1-2 rol | 2-4 rol | 4+ rol |
| Test senaryosu | Ana akış odaklı | Ana + yan akışlar | Uç durumlar dahil |
| Cihaz matrisi | Sınırlı | Dengeli | Geniş |
| Güvenlik testi | Temel | Orta seviye | Gelişmiş |
| Regresyon | Manuel ağırlıklı | Manuel + otomasyon | Otomasyon daha güçlü |
| Yayın sonrası izleme | Crash ve geri bildirim | Crash + performans | SLA, log, alarm, raporlama |
Örneğin yalnızca içerik gösteren bir MVP’de kapsamlı yük testi ilk sürüm için gereksiz olabilir. Fakat çok lokasyonlu saha ekibi kullanan bir B2B uygulamada senkronizasyon, offline kayıt ve yetki testi ilk sürümde bile kritik hale gelir.
Bu ayrım, mobil uygulama yaptırmak isteyen şirketler için karar aşamasında önemlidir. Test kapsamı fiyatı etkiler; fakat doğru kapsamlandırma yapılırsa bütçe gereksiz yere şişmeden risk kontrol altına alınır.
Atalay Tech perspektifi: test sadece hata avlamak değildir
Atalay Tech’in mobil uygulama, web platformu, yönetim paneli ve AI destekli yazılım projelerinde test süreci üç soruya cevap vermek için kurgulanır:
- Kullanıcı yapmak istediği işi kesintisiz tamamlayabiliyor mu?
- Sistem yanlış, eksik veya kötü niyetli veriyle güvenli davranıyor mu?
- Ürün mağaza yayını sonrası sürdürülebilir şekilde izlenebiliyor mu?
Bu yaklaşım özellikle backend bağlantılı mobil uygulamalarda fark yaratır. Çünkü mobil arayüzde görünen küçük bir hata, çoğu zaman API sözleşmesi, veritabanı kuralı, bildirim kuyruğu veya yönetim paneli yetkisiyle bağlantılıdır.
Örneğin bir üyelik uygulamasında kullanıcı profil fotoğrafı yüklediğinde test şu zinciri kontrol etmelidir: mobil dosya seçimi, dosya boyutu, upload endpoint’i, CDN erişimi, admin panelinde görünürlük, kullanıcı silme talebi sonrası medya kaydının davranışı. Tek ekranlık bir işlem gibi görünür; gerçekte altı ayrı teknik noktaya dokunur.
AI entegrasyonu olan projelerde test kapsamı daha da hassaslaşır. AI rapor üretiyorsa boş veri, eksik veri, hatalı veri, tekrar üretim, kullanıcı yetkisi ve log kaydı ayrı ayrı denenmelidir. Çünkü AI çıktısı “çalıştı” diye kabul edilemez; bağlam, güvenlik ve kullanıcıya sunum şekli birlikte test edilmelidir.
Mobil uygulama test sürecinde sık yapılan hatalar
Test sürecinde en sık görülen hata, yalnızca mutlu senaryonun denenmesidir. Kullanıcı doğru e-posta girer, doğru şifre yazar, interneti kesilmez, ödeme başarılı olur ve uygulama çalışır. Gerçek hayat böyle ilerlemez.
Sık yapılan hatalar şunlardır:
- Teste geliştirme bittikten sonra başlamak
- Android’i tek cihazla kontrol etmek
- iOS izin metinlerini son gün yazmak
- API hata kodlarını kullanıcı deneyimiyle birlikte düşünmemek
- Boş veri, uzun metin, emoji, Türkçe karakter ve düşük internet senaryolarını atlamak
- Yönetim paneli ile mobil uygulamayı ayrı ayrı test etmek
- Push notification yönlendirmelerini hafife almak
- Yayın sonrası crash izleme kurmadan mağazaya çıkmak
- Test ortamı ile canlı ortam anahtarlarını karıştırmak
Bu hatalar teknik ekip için küçük görünebilir, fakat kullanıcı tarafında güven kırılmasına dönüşür. Özellikle ilk yayın haftasında oluşan düşük puanlar, uygulama toparlansa bile mağaza algısını bir süre etkileyebilir.
Yayın sonrası test ve bakım nasıl sürdürülür?
Mobil uygulama yayına çıktığında test bitmez; sadece testin veri kaynağı değişir. Artık gerçek cihazlar, gerçek ağ koşulları, gerçek kullanıcı davranışları ve mağaza geri bildirimleri devrededir.
Yayın sonrası takipte şu alanlar düzenli izlenmelidir:
- Crash ve ANR kayıtları
- Mağaza yorumları
- Kullanıcı destek talepleri
- Sık terk edilen ekranlar
- Ödeme veya form tamamlama oranları
- Bildirim açılma ve yönlendirme davranışı
- Yeni OS sürümleri sonrası oluşan hatalar
- API değişikliklerinin mobil uygulamaya etkisi
Bu aşamada hızlı hotfix yayınlamak kadar, hatanın kök nedenini bulmak da önemlidir. Örneğin “uygulama donuyor” şikâyeti tek başına yeterli değildir. Hangi cihazda, hangi sürümde, hangi ekranda, hangi işlemden sonra donduğu bilinmeden doğru çözüm üretilemez.
Bu nedenle mobil uygulama test sürecinin profesyonel parçası hata kayıt disiplinidir. Hata; ekran görüntüsü, cihaz modeli, uygulama sürümü, kullanıcı rolü, tekrar adımı ve beklenen sonuçla kaydedilmelidir. Böylece geliştirme ekibi tahminle değil, kanıtla ilerler.