Uygulamanızı Yayından Önce Nasıl Test Edersiniz: Pratik Lansman Öncesi Plan
Uygulamanızı yayından önce test etmek için kullanıcının tamamlayabilmesi gereken birkaç akışı listeleyin, her birini bir dizüstü bilgisayarda ve bir telefonda yeni bir kullanıcı olarak çalıştırın, ardından işlerin ters gidebileceği yolları deneyin: boş veri, hatalı girdi, ikinci bir hesap, yavaş bağlantı. Para ya da özel veri içeren her şeyi ekstra dikkatle test edin ve yayınladıktan sonra ana akışları canlı URL'de tekrarlayın. Son olarak uygulamayı hiç görmemiş birinin kullanmaya çalışmasını izleyin.
Bunun için bir QA ekibine ya da bir test çerçevesine ihtiyacınız yok. Bir listeye, bir ya da iki saate ve onu gerçekten tıklayarak geçme disiplinine ihtiyacınız var.
Adım 1: Önemli akışları yazın
Akış, bir kullanıcının gelip tamamlamak istediği baştan sona bir görevdir. Çoğu uygulamanın gerçekten önemli üç ila altı akışı vardır. Bir rezervasyon uygulaması için:
- Kayıt olun ve hesabı onaylayın
- Bir ders bulun ve rezervasyon yapın
- Bir rezervasyonu iptal edin
- Bir ders paketi için ödeme yapın
- Personel: bugünkü rezervasyonları görün
Kullanıcı hikâyeleri yazdıysanız, kabul kriterleri zaten test senaryolarınızdır. Yazmadıysanız, her akış için “başarı”nın neye benzediğini bir satırla yazın.
Sıralayın. Para kazandıran ya da her kullanıcının karşılaştığı akışlar (kayıt, giriş, temel eylem) en önce ve en çok test edilir.
Adım 2: Yeni bir kullanıcı olarak mutlu yolu test edin
“Mutlu yol”, akışın tam olarak planlandığı gibi gitmesidir. Bir yabancının deneyimleyeceği şekilde test edin:
- Giriş yapmamış ve kayıtlı veri olmayan bir gizli tarayıcı penceresi kullanın.
- Doğrulayabileceğiniz gerçek bir e-posta ile yeni bir hesap kullanın.
- Ana sayfadan ya da bir bağlantıdan başlayın; inşa ederken yer imine eklediğiniz bir sayfadan değil.
Yeni kullanıcıların verisi yoktur. Birçok hata yalnızca bir liste boş olduğunda, bir profilin fotoğrafı yokken ya da henüz hiçbir şey satın alınmamışken ortaya çıkar. Test verileriyle dolu kendi hesabınız bunları gizler.
Adım 3: Kırmaya çalışın
Şimdi her akışı tekrarlayın ve bilerek yanlış bir şey yapın.
| Bunu deneyin | Neyi kontrol ediyorsunuz |
|---|---|
| Formları boş ya da yalnızca boşluklarla gönderin | Zorunlu alanlar açık bir mesajla zorunlu tutuluyor mu |
| Çok uzun metin, emoji, aksanlı isimler | Düzen bozulmuyor, veri doğru kaydediliyor |
| Yanlış biçimler: telefon alanında harfler, geçmiş bir tarih | Doğrulama hem sayfada hem sunucuda çalışıyor |
| Gönder düğmesine çift tıklayın | Çift sipariş ya da rezervasyon oluşmuyor |
| Bir akış ortasında tarayıcının geri düğmesi | Bozuk durum ya da kaybolan veri yok |
| Her sayfada yenileyin | Veri kalıcı; boş sayfa ya da 404 yok |
| Çıkış yapın, sonra geri tuşuna basın | Özel sayfalar görünmüyor |
| Aynı şeyi düzenleyen iki sekme | Son kayıt, ilk kaydı sessizce silmiyor |
Yenilemeyi ayrıca belirtmeye değer: uygulama tıklayarak gezinirken çalışıyor ama daha derin bir sayfada yenileme 404 gösteriyorsa, yayından sonra 404 hatalarını nasıl düzeltirsiniz rehberine bakın.
Adım 4: İki hesapla yetkileri test edin
Hesapları olan herhangi bir uygulama için en önemli test budur ve en sık atlanan testtir.
İki normal kullanıcı, A ve B oluşturun; uygulamanızda yönetici varsa bir yönetici de ekleyin.
- A olarak bir kayıt oluşturun. B olarak giriş yapın. B bunu görebiliyor, düzenleyebiliyor ya da silebiliyor mu? Tasarım gereği değilse yapamamalı.
- A olarak kayıtlarınızdan birinin URL'sini kopyalayın. B olarak giriş yapın ve bu URL'yi doğrudan açın.
- Normal bir kullanıcı olarak yönetici sayfalarını URL'lerini yazarak açmayı deneyin.
- Tamamen çıkış yapın ve aynı URL'leri deneyin.
Burada bir sorun bulursanız, düzeltilmeden yayınlamayın. Kontrol, bir düğmeyi gizlemekle değil, sunucuda yapılmalıdır. Yapay zekâ ile yapılmış uygulamalar için güvenlik kontrol listemiz konuyu daha ayrıntılı anlatır.
Adım 5: Gerçek cihazlarda test edin
Uygulamayı dar bir tarayıcı penceresinde değil, gerçek bir telefonda açın.
- Her düğmeye yakınlaştırmadan dokunabiliyor musunuz?
- Klavye yazdığınız alanı kapatıyor mu?
- Tablolar ve geniş içerik sayfayı yana itmek yerine kayıyor ya da satır atlıyor mu?
- Metin, büyütmeye gerek kalmadan okunabiliyor mu?
Mümkünse en az bir iPhone (Safari) ve bir Android telefonda (Chrome) deneyin. Özellikle Safari'nin tarihler, videolar ve sabit konumlu öğelerle ilgili kendine özgü sorunları vardır.
Adım 6: Para ve e-postayı baştan sona test edin
Kart çeken ya da e-posta gönderen her şey tam bir denemeden geçmelidir.
Ödemeler. Ödeme sağlayıcınızın test modunu ve test kart numaralarını kullanın. Başarılı bir ödemeyi, reddedilen bir kartı ve iptal edilen bir ödeme sayfasını kontrol edin. Siparişin ya da aboneliğin ödemeden sonra yalnızca sağlayıcının panelinde değil, uygulamanızda da göründüğünü doğrulayın. Uygulamanız webhook'lara (ödeme sağlayıcısının sunucunuza gönderdiği mesajlar) dayanıyorsa, bunların yalnızca geliştirme ortamında değil, yayınlanmış uygulamada da ulaştığını kontrol edin. Sonra lansmandan önce canlı anahtarlara geçin ve iade edeceğiniz küçük bir gerçek satın alma yapın.
E-postalar. İki ya da üç farklı sağlayıcıdan gerçek adreslerle kayıt olun. E-postaların ulaştığını, spam klasörüne düşmediğini ve içindeki her bağlantının önizleme adresi değil canlı alan adını gösterdiğini kontrol edin.
Adım 7: Hızı ve hataları kontrol edin
- Tarayıcının geliştirici araçlarını açın (sağ tık → İncele) ve her ana sayfada Konsol sekmesine bakın. Kırmızı hatalar, ortada bir şey bozuk görünmese bile düzeltmeye değerdir.
- Siteyi Wi-Fi değil mobil veri üzerinden bir telefonda yükleyin. İlk ekran birkaç saniye sürüyorsa, önce görsel boyutlarına bakın.
- Performans ve erişilebilirlik üzerine hızlı bir okuma için Chrome geliştirici araçlarındaki Lighthouse gibi ücretsiz bir denetim çalıştırın.
Adım 8: Önizlemeyi değil, yayınlanmış uygulamayı test edin
Önizleme ve yayınlanmış uygulama aynı ortam değildir. Lansmanı kimseye duyurmadan önce, ana akışları canlı URL'de tekrarlayın:
- Yayınlanmış uygulama için tüm ortam değişkenleri ve gizli bilgiler ayarlandı mı?
- Doğru veritabanını, beklediğiniz verilerle kullanıyor mu?
- Giriş yönlendirmeleri ve e-posta bağlantıları canlı alan adını kullanıyor mu?
- Derin bir sayfada yenileme doğru yükleniyor mu?
Adım 9: Başkasının kullanmasını izleyin
Bir ya da iki kişiye talimat değil, bir hedef verin (“cumartesi için bir yoga dersi ayırtın”). İzleyin, yardım etmeyin ve nerede tereddüt ettiklerini not edin. Bu, kafa karıştırıcı metinleri ve gizli düğmeleri bulmanın en hızlı yoludur. Bunun daha büyük bir versiyonu için beta test nasıl yapılır rehberine bakın.
Bir hata ile karşılaştıklarında, adımları, beklenen sonucu ve gerçekleşen sonucu içeren düzgün bir not alın. İyi bir hata raporu nasıl yazılır rehberi formatı gösterir.
Test için yapay zekâdan yardım almak
Yapay zekâ ile geliştiriyorsanız, testleri planlaması ve çalıştırması için ondan yardım isteyebilirsiniz:
Bu uygulamadaki ana kullanıcı akışlarını listele ve her biri için en çok bozulma ihtimali olan uç durumları çıkar: boş durumlar, geçersiz girdi, yetkiler ve yenileme. Üzerinden geçebileceğim bir kontrol listesi olarak hazırla.
İki farklı test kullanıcısıyla giriş yap ve B kullanıcısının A'nın oluşturduğu hiçbir şeyi görüp değiştiremediğini kontrol et; A'nın kayıt URL'lerini doğrudan açarak da. Bir şeyi düzeltmeden önce bulduklarını raporla.
Yapay zekânın kendi test raporunu bir ilk geçiş olarak değerlendirin. Para ve yetki akışlarını yine kendiniz tıklayarak test edin.
Mythex'te test
Mythex'te /test komutu Uygulama Testini çalıştırır: agent canlı önizlemenize karşı bir tarayıcıyı yönetir, sayfalarda gezinir, ekran görüntüleri alır ve bozuk akışları sohbette bildirir. En iyi sonucu belirli bir akışla verir; örneğin “kayıt olmayı ve bir ders rezervasyonunu test et”. Bulunanları /fix ya da normal bir mesajla düzeltin, sonra /test komutunu yeniden çalıştırın. Uygulama Testi önizlemeyi kullanır; bu yüzden yayınladıktan sonra ana akışları yayınlanmış URL'de kendiniz kontrol edin. Dokümanlardaki Uygulama Testi bölümüne ve bir şey başarısız olduğunda yapay zekâ ile yapılmış bir uygulamada hata ayıklama rehberine bakın.
Sık yapılan hatalar
- Yalnızca kendiniz olarak test etmek. Çok veri içeren yönetici hesabınız boş durum ve yetki hatalarını gizler.
- Yalnızca dizüstü bilgisayarda test etmek. Birçok sitenin ziyaretçisinin çoğu telefondan gelir.
- İkinci hesabı atlamak. Kullanıcılar arasında veri sızması, bir uygulamanın yayınlanabileceği en ciddi hatadır.
- Önizlemeye güvenmek. Canlı uygulamanın ayarları farklıdır; onu da test edin.
- Yakındaki şeyleri yeniden test etmeden hata düzeltmek. Bir formdaki düzeltme, kodu paylaşan başka bir formu bozabilir.
Yayın öncesi kontrol listesi
- Ana akışlar listelendi ve sıralandı
- Her akış gizli bir pencerede yeni bir kullanıcı olarak geçiyor
- Boş, geçersiz, uzun ve yinelenen girdiler ele alındı
- Her sayfada yenileme çalışıyor
- Kullanıcılar birbirinin verilerini göremiyor ya da değiştiremiyor, URL ile bile
- Yönetici sayfaları normal kullanıcılara ve çıkış yapmış ziyaretçilere kapalı
- Gerçek bir iPhone ve Android telefonda çalışıyor
- Ödemeler test edildi: başarı, red, iptal ve sonrasında uygulamanın güncellenmesi
- E-postalar ulaşıyor, spam olmuyor ve canlı alan adına bağlanıyor
- Ana sayfalarda konsolda kırmızı hata yok
- Ana akışlar yayınlanmış URL'de tekrarlandı
- En az bir dış kişi, siz izlerken denedi
Sorular
Küçük bir uygulamanın yayından önce ne kadar teste ihtiyacı var?
Yeni bir kullanıcının bir telefonda ve bir dizüstü bilgisayarda ana akışları tamamlayabildiğinden, kullanıcıların birbirinin verilerini göremediğinden ve para içeren her şeyin baştan sona çalıştığından emin olmanız için yeterli. Çoğu küçük uygulama için bu haftalar değil, birkaç odaklanmış saattir.
Bir MVP için otomatik testlere ihtiyacım var mı?
Mutlaka değil. Temel akışların elle test edilmesi, lansmanı engelleyen hataların çoğunu yakalar. Otomatik testler, uygulamayı sık değiştirmeye başladığınızda ve daha önce çalışan bir şeyi bozmadığınızı hızlıca bilmek istediğinizde değer kazanmaya başlar.
Uygulamamı önizlemede mi yoksa canlı uygulamada mı test etmeliyim?
İkisinde de. Önizlemede kapsamlı test yapın, sonra yayınlanmış uygulamada ana akışları tekrarlayın; çünkü eksik ortam değişkenleri, farklı bir veritabanı ya da yönlendirme ayarları canlı sürümün farklı davranmasına neden olabilir.
Benim dışımda uygulamamı kim test etmeli?
En az daha önce hiç görmemiş bir kişi. Ona talimat değil, bir hedef verin ve yardım etmeden izleyin. Yapıcılar, bozulan yollardan bilinçsizce kaçınır.