27 Ocak 2017

Entegrasyon (Integration) Testi Nedir ve Nasıl Yapılır?

Entegrasyon (Integration) Testi Nedir ve Nasıl Yapılır?

Entegrasyon testi veya Genel test olarak da bildiğimiz bu test yöntemi birden fazla modül veya bileşeni olan bir sistemin tümünü kontrol eden test çeşididir. Genelde Birim testleri (Unit Test) biten yazılımlar için bu test yöntemi uygulanır.

Entegrasyon testinin amacı birbirine bağlı modülleri bir bütün olarak test edip genel yapıda bir hata var mı kontrol etmektir. Örnekle anlatacak olursak genel bir ekran düşünün ve ana ekran üzerinden dağılan 3 faklı Form çeşidi örneğimiz olsun. Her bir formun kendi içinde birçok Grid yapısı ve fonksiyonel birçok özelliği olsun. Bu üç Formdan diyelim ki üçüncü olanını geliştiriyorsunuz siz üçüncü formun birim ve sistem testlerini yaptıktan sonra hem ana ekran üzerinden üçüncü forma yönlenme akışını hemde üçüncü formun genelini hemde diğer iki form ile ortak kullanılan özellikleri test etmek istediğinizde Entegrasyon testi yapmış olursunuz.

Entegrasyon testi öncesi birim testlerin başarı ile tamamlanmış olması gerekmektedir. Entegrasyon testi için son kullanıcıya teslim etmeden önce genelde yapılan test çeşidi de diyebiliriz. Entegrasyon testinin diğer adı Smoke Test(Duman Test) olarak da bilinir. Smoke Test senaryoları birim test caselerinden farklı olup her modülde yapılan geliştirme sonrası tüm modüllerin genel çalışırlığı Smoke Test yapılarak kontrol edilir.

* Smoke Test caseleri için Test Otomasyonu kullanabilirsiniz, Birim veya Sistem testleri için pek test otomasyonu tercih edilmez.

* Entegrasyon test çeşitleri dört tane olup adları; Big-Bang Integration Testing, Bottom-up Testing, Top-down Testing, Sandwich Testing

* Entegrasyon testlerinde Web servis testleri için SoapUI aracını kullanabilirsiniz. SoapUI bir servis simülasyon aracıdır.

* Sürekli Entegrasyon testi için kullanılan bazı araçlar; Selenium, ANT, Jenkins, Git, MXUnit, Borland SILK Test

* Tümleyim Testi olarak da bilinen Entegrasyon testinde; Veri tabanı Data kontrolü, Backend, Mimari Altyapı, Arayüz kısımlarının hepsi test edilir.

* Sistem entegrasyon testi, farklı sistemler veya donanım ve yazılım arasındaki etkileşimleri test eder ve sistem testinden sonra yapılabilir.

* Modül A modül B'ye entegre ediyorlarsa, test uzmanları her bir modülün fonksiyonel değil, sadece modüller arasındaki iletişimi test etmelidirler.

* Entegrasyon testinde ideal yaklaşım, test uzmanlarının mimariyi anlayıp entegrasyon testi kurgusunu planlamaları dır.

* Bir proje Release öncesi mutlaka Entegrasyon testinden geçmelidir. Detaylı olan bu test hem kaliteyi artırır hemde bulgu sayısını minimuma indirir.

Kaynaklar
en.wikipedia.org/wiki/Integration_testing (Integration Testing)
en.wikipedia.org/wiki/Continuous_integration (Continuous Integration)
tr.wikipedia.org/wiki/Test_otomasyon (Test Otomasyon)