Test Driven Development Eğitimi

Test Driven Development Eğitimi

Eğitim Hakkında

Bu eğitim, TDD’nin felsefesini ve prensiplerini Red/Green/Refactor döngüsü üzerinden ele alırken; birim testlerin amacı, test türleri, mock yaklaşımları ve Dependency Injection ile test edilebilir tasarımı uygulamalı olarak öğretir. Katılımcılar; refactoring, test kodu kalitesi ve BDD yaklaşımlarıyla birlikte code coverage, test organizasyonu ve Continuous Integration/Delivery ilişkisini gerçekçi örneklerle deneyimler.

Ön Koşul

Nesne yönelimli programlama (OOP) temellerine ve tercih edilen dilin (ör. C# veya Java) temel sözdizimine giriş seviyesinde hâkimiyet gereklidir.

Eğitim İçeriği

  • TDD Nedir?
  • Agile Manifesto
  • TDD’nin Temel Felsefesi
  • TDD Prensipleri
  • Unit Test’in Amacı
  • Test Yöntem ve Tipleri
  • Unit Test ve Araçlar
  • Hello Unit Testing
  • Hello Test First Development
  • IoC Nedir? Ne İşe Yarar?
  • Temel DI Prensipleri
  • Test Kodunda DI’ın Önemi
  • Unity ile Dependency Injection
  • Fake Object ile Test Kodu Yazmak
  • State ve Interaction Temelli Verifikasyon
  • Stub ve Mock Kavramları
  • Dinamik Mock Kütüphaneleri ile Çalışmak
  • Harici Kütüphanelerin Test Edilmesi (Db, FileSystem vs)
  • Temel Refactoring Teknikleri
  • Mevcut Bir Kodun Test Edilebilir Hale Gelmesi
  • Temel OOP Prensipleri ve Test Koduna Etkisi
  • Test Edilebilir Yazılım Tasarımı
  • İyi bir Unit Testin Yapısı
  • Test Fixture’da Olması Gerekenler
  • ObjectBuilder ve ObjectMother Kalıpları
  • Test Smells
  • Unit Test Patterns / Antipatterns
  • TDD ile Farkları
  • Acceptance Test Driven Development
  • Specification by Example
  • Code Coverage Kavramı
  • Başarılı ve Başarısız Testlerin Ele Alınması
  • Test Kodunun Organizasyonu
  • Test Kodunun Tekrar Kullanımı
  • Başarılı ve Başarısız Testlerin Ele Alınması
  • Test Kodunun Organizasyonu
  • Test Kodunun Tekrar Kullanımı
  • Otomatik Build’lar ve Test Kodu İlişkisi
  • Continuous Integration
  • Continuous Delivery

Kazanımlar

  • TDD yaklaşımını amaçları ve faydalarıyla birlikte günlük akışa entegre edebileceksiniz.
  • Red/Green/Refactor döngüsünü disiplinli biçimde uygulayabileceksiniz.
  • Birim testin amacını ve test yöntemlerini doğru seçebileceksiniz.
  • Dependency Injection ile bağımlılıkları izole ederek test edilebilir tasarım kurabileceksiniz.
  • Stub/Mock/Fake gibi test doubles kullanarak yan etkileri kontrol altına alabileceksiniz.
  • Refactoring uygulayarak kodu sadeleştirip test edilebilir hâle getirebileceksiniz.
  • İyi testin yapısını kurarak fixture, ObjectMother/ObjectBuilder kalıplarını kullanabileceksiniz.
  • Test smells ve antipatternleri tespit ederek giderebileceksiniz.
  • Code coverage ve test organizasyonu pratikleriyle sürdürülebilir test setleri oluşturabileceksiniz.
  • CI/CD hatlarında testlerin konumunu anlayarak otomatik çalıştırmaları yönetebileceksiniz.

Hedef Kitle

  • Yazılım Geliştiriciler
  • Yazılım Mimarları
  • QA Mühendisleri
  • Test Otomasyon Mühendisleri
  • DevOps Mühendisleri
  • Ürün Sahipleri
  • Kıdemli Yazılım Mühendisleri
  • Teknik Liderler

Sertifika

Eğitimlerimize %80 oranında katılım gösterilmesi ve eğitim müfredatına göre uygulanacak sınav/projelerin başarıyla tamamlanması durumunda, eğitimin sonunda dijital ve QR kod destekli “BT Akademi Başarı Sertifikası” verilmektedir.

SEKTÖRÜN GÜVENDİĞİ ÇÖZÜM ORTAĞI

BT Akademi'yi tercih eden 4.000'den fazla kurum yanılmıyor.

DeFacto
Garanti BBVA
Turkiye Finans Katilim Bankasi
Migros
Zorlu Holding
Akbank
HalkBank
Istanbul Bilgi Universitesi
Sahibinden
Borsa İstanbul
Saglık Bakanlıgı
TÜBİTAK MAM
THY Technic
Yapı Kredi
Asfat
Agesa
Erdemir
Anadolu Üniversitesi
Ford-Otosan
Pegasus
Sun Ekspress
Kuveyt Türk
Isdemir
QNB Finansbank
Getir
DeFacto
Garanti BBVA
Turkiye Finans Katilim Bankasi
Migros
Zorlu Holding
Akbank
HalkBank
Istanbul Bilgi Universitesi
Sahibinden
Borsa İstanbul
Saglık Bakanlıgı
TÜBİTAK MAM
THY Technic
Yapı Kredi
Asfat
Agesa
Erdemir
Anadolu Üniversitesi
Ford-Otosan
Pegasus
Sun Ekspress
Kuveyt Türk
Isdemir
QNB Finansbank
Getir
Bilgi İstiyorum