ETL projeleri, SSIS, PowerCenter vb. Gibi bir ETL (Extract - Transform - Load) aracı kullanılarak oluşturulan projelerdir.
Bunlar genellikle harici bir kaynaktan veri okumayı, bir hazırlama veritabanına yüklemeyi, belirli dönüşümleri gerçekleştirmeyi ve bir son veritabanına yüklemeyi içerir
Basit bir örnek, SSIS kullanarak okul öğretmenleri tarafından sağlanan excel dosyalarını okumak ve bir veritabanına yüklemek için SSIS kullanmak olabilir. Ardından, her öğrencinin notlarını hesaplamak için saklı yordamlar veya daha fazla SSIS paketi yazın ve bu verileri bir veri deposuna yükleyin
Daha sonra görselleştirme oluşturmak için raporlama araçları (SSRS \ Excel \ etc) tarafından kullanılan çıktıyı oluşturmak için mart'ın üzerine saklı yordamlar oluşturun.
Bu senaryoda TDD ve uygun birim sınama nasıl anlamaya çalışıyorum. ETL'ler için yapılan testler çoğunlukla hazırlama tablolarına yüklenen verilerin kaynaktan gelen verilerin doğru alt kümesi olmasını sağlamakla ilgilidir. Bu nedenle, bunun için bir test uygulamak, ETL'nin mini bir versiyonunun uygulanmasına yol açar. Rapor SP'lerinin çıktısı tablolardaki verilere bağlıdır, bu nedenle temizlenmiş test verileri içeren bir veritabanı oluştursanız bile, bakım kabusu olmadan kararlı bir çıktı verisi kümesi olamaz.
Misal:
Sprint 1: Öğrenci tablosu Ad, Yaş, Not içerir
Bu tablo için test verileri ve buna dayalı birim testleri oluşturursunuz
Sprint 2: Tabloya bir cinsiyet alanı eklenir.
Şimdi, öğrenci alanındaki verileri cinsiyet özelliğini doldurmak için yenilerseniz, veriler değiştiği için test senaryoları geçersiz kılınır. Ve eğer yapmazsanız, cinsiyet sütununu gerektiren test senaryoları oluşturamazsınız