Entegrasyon Testi Nedir?
İngilizce: Integration Testing
Yayın: · Son güncelleme:
Entegrasyon Testi Nedir? Kısaca
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.

Entegrasyon testi nedir?
Entegrasyon testi, parçaların tek başına değil birlikte nasıl davrandığına bakar. Her biri kendi içinde kusursuz çalışan iki modül, birbirine bağlandığında sorun çıkarabilir. Bu testler tam olarak o bağlantı noktalarını hedefler.
Bir benzetme yapalım. Motor ve vites kutusu ayrı ayrı test edilip onaylanmış olabilir. Entegrasyon testi, ikisini birleştirip arabanın gerçekten hareket edip etmediğine bakar.
Birim testinden farkı
Birim testi bağımlılıkları sahte nesnelerle değiştirir ve çok hızlıdır. Entegrasyon testi ise gerçek ya da gerçeğe yakın bağımlılıklarla çalışır. Bu yüzden daha yavaştır ama gerçek hayattaki sorunları daha iyi yakalar.
Örneğin bir üyelik sisteminde birim testi, şifre doğrulama fonksiyonunun doğru çalıştığını gösterir. Entegrasyon testi ise yeni kullanıcının gerçekten veritabanına kaydedildiğini, ardından giriş yapabildiğini ve hoş geldin e-postasının kuyruğa düştüğünü kontrol eder. Veritabanındaki bir sütun adı değiştiyse bunu birim testi değil, entegrasyon testi yakalar.
Uygularken dikkat edilecekler
Test için ayrı bir veritabanı kullanın ve her testten sonra temizleyin. Testlerin birbirinin bıraktığı veriye bağlı olması, rastgele başarısız olan testlere yol açar.
Dış servisler sorun yaratabilir. Bir ödeme sağlayıcısına her testte gerçek istek atmak hem yavaş hem risklidir; sağlayıcıların sunduğu test ortamlarını ya da yerel taklit servisleri kullanın. Docker, test veritabanını her çalıştırmada temiz bir şekilde ayağa kaldırmak için pratik bir araçtır.
Sıkça Sorulan Sorular
Entegrasyon testi ne zaman yapılır?
Genelde birim testlerinden sonra ve uçtan uca testlerden önce yapılır. CI/CD kullanan ekiplerde her kod değişikliğinde otomatik olarak çalıştırılır.
API testleri entegrasyon testi sayılır mı?
Çoğu zaman evet. Bir API'ye istek gönderip veritabanı ve diğer bileşenlerle birlikte doğru cevabı döndürdüğünü kontrol etmek, tipik bir entegrasyon testidir.