İçeriğe geç
parazade

Uçtan Uca Test Nedir?

İngilizce: End-to-End Testing

Yayın: · Son güncelleme:

Uçtan Uca Test Nedir? Kısaca

Uçtan uca test (end-to-end, E2E), bir uygulamayı gerçek kullanıcının gözünden, arayüzden veritabanına kadar tüm katmanlarıyla birlikte baştan sona bir iş akışı üzerinden test etme yöntemidir.

Uçtan Uca Test nedir?
İçindekiler
  1. Uçtan uca test nedir?
  2. Örnek bir senaryo
  3. Zorluklar ve iyi uygulamalar

Uçtan uca test nedir?

Uçtan uca test, uygulamayı bir kullanıcı gibi kullanır. Tarayıcıyı açar, butonlara tıklar, form doldurur ve sonucun ekranda doğru göründüğünü kontrol eder. Arkadaki sunucu, veritabanı ve dış servisler de gerçek akışın parçasıdır.

Kısaca E2E test denir. Diğer testlerin göremediği bir şeyi gösterir: bütün sistem bir arada çalışıyor mu?

Örnek bir senaryo

Bir yemek sipariş sitesini düşünün. E2E test şu adımları otomatik olarak dener:

  1. Ana sayfayı aç ve bir restoran seç.
  2. İki ürünü sepete ekle.
  3. Adres gir ve test kartıyla öde.
  4. "Siparişiniz alındı" mesajını ve sipariş numarasını kontrol et.

Bu dört adımdan herhangi biri bozulursa test başarısız olur. Ödeme butonunun bir tasarım değişikliğinde ekrandan kaybolması gibi bir hatayı birim testi göremez, ama uçtan uca test hemen yakalar. Playwright, Cypress ve Selenium bu iş için yaygın araçlardır.

Zorluklar ve iyi uygulamalar

E2E testler yavaştır ve kırılgan olabilir. Sayfanın geç yüklenmesi ya da bir buton adının değişmesi, kodda hata olmadığı hâlde testi düşürebilir.

Bu yüzden sayılarını az tutun ve en kritik akışlara odaklanın: kayıt, giriş, satın alma gibi. Ayrıntılı kontrolleri daha hızlı olan birim testi ve entegrasyon testlerine bırakın. Testleri ayrı bir test ortamında, test verileriyle çalıştırın; gerçek kartlarla ödeme denemeyin.

Sıkça Sorulan Sorular

E2E test ile kabul testi aynı şey mi?

Benzerdir ama amaçları farklıdır. E2E test teknik açıdan tüm sistemin birlikte çalıştığını doğrular. Kabul testi ise ürünün iş gereksinimlerini karşılayıp karşılamadığına odaklanır ve çoğu zaman müşteri ya da iş birimi tarafından yapılır.

Uçtan uca testler ne sıklıkla çalıştırılmalı?

Kritik akışlar için her yayından önce çalıştırılması iyi bir kuraldır. Bazı ekipler bunları her gece ya da her birleştirmede otomatik olarak çalıştırır.

İlgili terimler

Entegrasyon Testi(Integration Testing)Entegrasyon testi, bir yazılımın ayrı ayrı geliştirilmiş bileşenlerinin, örneğin uygulama kodu, veritabanı ve dış servislerin, bir araya geldiğinde doğru şekilde iletişim kurup çalıştığını doğrulayan test türüdür.Kabul Testi(Acceptance Testing)Kabul testi (acceptance testing), bir yazılımın teslimden önce iş gereksinimlerini ve kullanıcı beklentilerini karşılayıp karşılamadığını doğrulamak için yapılan son test aşamasıdır. Kullanıcı kabul testi (UAT) en bilinen türüdür.Test Otomasyonu(Test Automation)Test otomasyonu, yazılım testlerinin bir insan tarafından elle yapılması yerine önceden yazılmış betikler ve araçlar aracılığıyla otomatik olarak çalıştırılması ve sonuçların raporlanmasıdır.Sunucu(Server)Sunucu (server), ağ üzerinden başka bilgisayarlara ve cihazlara veri, dosya, web sayfası ya da uygulama hizmeti sağlayan bilgisayar veya yazılımdır. İstek gönderen tarafa istemci denir.Veritabanı(Database)Veritabanı, verilerin düzenli, aranabilir ve güncellenebilir biçimde saklandığı elektronik kayıt sistemidir. Müşteri listeleri, siparişler ve ürün bilgileri gibi veriler veritabanlarında tutulur.Birim Testi(Unit Testing)Birim testi (unit test), bir yazılımın en küçük test edilebilir parçasının, genelde tek bir fonksiyon ya da metodun, diğer bileşenlerden bağımsız olarak doğru çalışıp çalışmadığını kontrol eden otomatik testtir.Entegrasyon(Integration)Entegrasyon, ayrı çalışan yazılımların, sistemlerin ya da verilerin birbirine bağlanarak tek bir bütün gibi çalışmasının sağlanmasıdır. E-ticarette mağaza, kargo ve muhasebe programlarının otomatik veri paylaşması buna örnektir.