E2E Test Nedir?
İngilizce: End-to-End Test
E2E test, bir uygulamanın kullanıcı yolculuğunu tarayıcı, API ve veritabanı dahil gerçek akışa yakın şekilde doğrular.
E2E Test Nedir?
E2E test (end-to-end test), uygulamanın kullanıcı açısından kritik bir akışını baştan sona doğrulayan test türüdür. Sadece tek bir fonksiyonun doğru çalışmasına değil; arayüz, API, kimlik doğrulama, veritabanı ve üçüncü taraf servislerin birlikte verdiği sonuca bakar.
Nasıl Çalışır?
Bir test aracı gerçek tarayıcıyı veya tarayıcı motorunu kontrol eder. Kullanıcı gibi sayfaya gider, form doldurur, butona basar, sonuç mesajını veya veritabanındaki kaydı kontrol eder. Playwright, Cypress ve Selenium bu amaçla kullanılan yaygın araçlardır.
Örneğin bir e-ticaret sitesinde “ürünü sepete ekle, ödeme sayfasına git, test kartıyla ödeme dene, sipariş ekranını gör” akışı E2E test için uygundur. Her küçük hesaplama kuralını E2E ile test etmek ise yavaş ve kırılgan bir test paketi oluşturur.
Unit Test ile Farkı
Unit test tek bir fonksiyon veya sınıfı izole şekilde test eder. E2E test daha pahalıdır ama sistemin birleşik davranışını gösterir. Bu yüzden test piramidinde az sayıda, yüksek değerli ve kritik kullanıcı yolculukları için kullanılmalıdır.
İş Dünyasında Kullanımı
Login, ödeme, rezervasyon, başvuru formu, fatura oluşturma ve yönetim panelindeki yetki kontrolleri E2E test ile korunabilir. Test otomasyonu içinde stabil selector kullanımı, test verisi hazırlığı, paralel koşum ve ekran görüntüsü/video kaydı hata ayıklamayı kolaylaştırır.
İlgili Terimler
Entegrasyon testi, birden fazla modül, servis veya dış sistem birlikte çalıştığında beklenen veri akışını doğrular.
PlaywrightPlaywright, Chromium, Firefox ve WebKit üzerinde kullanıcı akışlarını otomatik çalıştırarak web uygulamalarını uçtan uca test eden açık kaynak araçtır.
Test OtomasyonuTest otomasyonu, seçilen test senaryolarını araçlarla tekrarlı çalıştırıp sonuçlarını CI veya raporlama sistemlerine aktarma pratiğidir.
Unit TestUnit test, fonksiyon veya sınıf gibi küçük bir kod birimini dış bağımlılıklardan izole ederek hızlı ve otomatik doğrulayan testtir.