TEST DRIVEN DEVELOPMENT (TDD) AND UNIT TESTING ESSENTIALS (TT3500) EĞİTİMİ

Önce testi yazın, güvenle kod geliştirin

Birim testi, kırmızı-yeşil-refactor döngüsü, JUnit, mock nesneler ve kod kapsamı

Test Driven Development (TDD) and Unit Testing Essentials (TT3500) Eğitimi, geliştiricilere test odaklı geliştirmenin esaslarını uygulamalı kazandırır.

3 gün Temel Seviye Online / Yüz Yüze / Hibrit Sertifikalı

Eğitim Hakkında

Birim testi temellerinden TDD döngüsüne, test çiftlerinden refactoring'e kadar

Test Driven Development (TDD) and Unit Testing Essentials (TT3500) Eğitimi, geliştiricilere test odaklı geliştirmenin esaslarını uygulamalı kazandırır. Katılımcılar JUnit benzeri bir xUnit çerçevesiyle ilk birim testlerini yazar, kırmızı-yeşil-refactor döngüsünü öğrenir. Stub, mock ve fake test çiftleriyle bağımlılıkları izole eder; refactoring ve kod kapsamıyla test kalitesini ölçer. Eğitim, kata alıştırmalarıyla TDD alışkanlığını kodlama pratiğine dönüştürür.

Süre ve Format

3 Gün. Her gün dört modül; kavramlar canlı kodlama, birim testi yazma ve TDD kata alıştırmalarıyla bilgisayar başında uygulamalı işlenir.

Seviye

Temel Seviye — Geliştiriciler için birim testi ve TDD esaslarını; JUnit, test çiftleri ve refactoring ile uygulamalı öğreten program

Öğrenme Metodu

Her kavram canlı kodlama ile gösterilir; katılımcılar birim testi yazma ve TDD kata alıştırmalarıyla kodu adım adım test ederek pekiştirir.

Neden Bu Eğitim?

🎯Güvenli geliştirme

Önce test yazarak kodun ne yapması gerektiğini netleştirir ve değişiklikleri kırılma korkusu olmadan güvenle yapmayı öğrenirsiniz.

🔴TDD döngüsü

Kırmızı-yeşil-refactor döngüsünü uygulayarak küçük adımlarla ilerlemeyi ve her adımda çalışan koda sahip olmayı kavrarsınız.

🧩İzole birim testi

Mock ve stub gibi test çiftleriyle bağımlılıkları izole ederek hızlı, güvenilir ve kararlı birim testleri yazmayı öğrenirsiniz.

Anahtar Konular

tdd eğitimibirim testi eğitimiunit testing eğitimijunit eğitimitest driven developmentmockito eğitimiyazılım geliştirici test eğitimimock nesne testrefactoring eğitimikod kapsamı test
“TDD yalnızca test yazmak değildir; önce beklenen davranışı tanımlayıp kodu o davranışa doğru küçük adımlarla büyütme disiplinidir.”

Ön Koşullar

Eğitime başlamadan önce faydalı olacak bilgi ve deneyim alanları

1
Programlama deneyimi

Java, C# veya benzeri nesne tabanlı bir dilde kod yazabilmek, birim testi alıştırmalarını takip etmek için gereklidir.

2
Nesne tabanlı kavramlar

Sınıf, nesne, metot ve arayüz gibi temel kavramlara aşinalık, test edilebilir tasarımı anlamayı kolaylaştırır.

3
IDE kullanımı

IntelliJ, Eclipse veya Visual Studio gibi bir IDE'de çalışabilmek, uygulamalı bölümleri rahat takip etmenizi sağlar.

4
Test ön bilgisi gerekmez

Birim testi veya TDD deneyimi gerekmez; kavramlar ilk testten başlayarak adım adım kodla birlikte öğretilir.

Eğitim İçeriği

Programın gün gün akışı aşağıdadır. Bir güne tıklayarak o günün modüllerini ve içeriklerini görebilirsiniz.

Günün hedefiKatılımcı birim testinin amacını kavrar, JUnit benzeri bir xUnit çerçevesiyle ilk testlerini yazar ve assertion'larla test yapısını kurarak test edilebilir kodun temel özelliklerini öğrenir.
Modül 1
Birim Testi ve Kodun Kalitesi
  • Birim testinin tek bir davranışı doğrulaması
  • Manuel kontrol ile otomatik test farkı
  • Hızlı geri bildirimin geliştirmeye katkısı
  • Regresyona karşı güvenlik ağı oluşturması
  • İyi birim testinin FIRST özellikleri
  • Testin yaşayan dokümantasyon olması
Modül 2
xUnit Çerçevesiyle İlk Birim Testi
  • JUnit test sınıfı ve test metodu yapısı
  • Test metotlarının anlamlı adlandırılması
  • @Test, @BeforeEach ve @AfterEach anotasyonları
  • Test projesinin kod yapısıyla ayrılması
  • IDE üzerinden testlerin çalıştırılması
  • Yeşil ve kırmızı test sonucunun okunması
Modül 3
Assertion ve Test Yapısı
  • assertEquals, assertTrue ve assertThrows kullanımı
  • Beklenen ile gerçek sonucun karşılaştırılması
  • Arrange-Act-Assert (AAA) test düzeni
  • İstisna (exception) durumlarının test edilmesi
  • Anlamlı başarısızlık mesajları yazma
  • Her testte tek bir mantıksal doğrulama
Modül 4
Test Edilebilir Kod Tasarımı
  • Test edilebilirliği zorlaştıran kod kokuları
  • Yan etkisi az, saf (pure) fonksiyonların değeri
  • Bağımlılıkların dışarıdan verilmesi fikri
  • Statik ve global duruma bağımlılığın riski
  • Küçük ve tek sorumluluklu metotlar yazma
  • Test edilebilir kodun okunabilirliğe katkısı
Günün hedefiKatılımcı kırmızı-yeşil-refactor döngüsünü uygular, küçük adımlarla TDD yapmayı öğrenir ve stub, mock, fake gibi test çiftleriyle bağımlılıkları izole ederek birim testlerini kararlı tutar.
Modül 1
Kırmızı-Yeşil-Refactor Döngüsü
  • Önce başarısız (kırmızı) test yazma adımı
  • Testi geçiren en basit kodu yazma (yeşil)
  • Davranışı bozmadan kodu iyileştirme (refactor)
  • Her döngüde tek bir küçük davranış ekleme
  • Testin gerçekten başarısız olduğunu görme
  • Döngünün sürekli tekrarlanması ritmi
Modül 2
Küçük Adımlarla TDD
  • Problemi küçük test edilebilir parçalara bölme
  • Basit örnekten genel çözüme ilerleme
  • Üçgenleme (triangulation) ile genelleştirme
  • Fazla kod yazma dürtüsünü dizginleme
  • Her yeşil adımda kodu commit etme alışkanlığı
  • Yapılacaklar listesiyle ilerlemeyi yönetme
Modül 3
Test Çiftleri: Stub, Mock ve Fake
  • Test çiftlerinin (test double) genel amacı
  • Dummy, stub ve fake nesnelerin ayrımı
  • Mock ile etkileşimin doğrulanması
  • Durum (state) ve davranış (behavior) doğrulaması
  • Veritabanı ve ağ gibi bağımlılıkların izolasyonu
  • Aşırı mock kullanımının getirdiği kırılganlık
Modül 4
Mockito ile Bağımlılık İzolasyonu
  • Mockito ile mock nesne oluşturma
  • when-thenReturn ile davranış tanımlama
  • verify ile metot çağrısının doğrulanması
  • Argüman eşleştiricilerin (matchers) kullanımı
  • Bağımlılığın arayüzle enjekte edilmesi
  • Dış servisi taklit ederek hızlı test koşma
Günün hedefiKatılımcı testlerin güvencesiyle refactoring tekniklerini uygular, kod kapsamını test kalitesi göstergesi olarak yorumlar ve uçtan uca bir TDD kata ile öğrendiklerini pekiştirmeyi öğrenir.
Modül 1
Refactoring Teknikleri
  • Metot çıkarma (extract method) ile sadeleştirme
  • Yeniden adlandırmayla niyeti netleştirme
  • Yinelenen kodun (duplication) kaldırılması
  • Kod kokularının tanınması ve giderilmesi
  • Testlerin refactoring güvenliğini sağlaması
  • Küçük ve sık refactoring alışkanlığı
Modül 2
Kod Kapsamı ve Test Kalitesi
  • İfade ve dal kapsamının (coverage) ölçülmesi
  • JaCoCo gibi kapsam araçlarının raporu
  • Yüksek kapsamın kaliteyi garantilememesi
  • Kapsamın değil, anlamlı doğrulamanın önemi
  • Mutasyon testiyle test gücünün sınanması
  • Kapsam hedefinin gerçekçi belirlenmesi
Modül 3
Test Edilebilir Tasarım İlkeleri
  • Tek sorumluluk ilkesinin teste katkısı
  • Bağımlılık enjeksiyonu (DI) ile gevşek bağ
  • Arayüzlere programlamanın test avantajı
  • SOLID ilkelerinin test edilebilirliğe etkisi
  • Birim ile entegrasyon testinin sınırı
  • Tasarım kararlarının testle yönlendirilmesi
Modül 4
Uygulamalı TDD Kata
  • Bir problemin baştan sona TDD ile çözülmesi
  • Yapılacaklar listesiyle adımların planlanması
  • Her döngüde testten koda ilerleme
  • Bağımlılığın mock ile izole edilmesi
  • Çözümün refactoring ile sadeleştirilmesi
  • Katanın gözden geçirilmesi ve geri bildirim

Eğitim Kazanımları

Program sonunda katılımcılar:

✅
Birim testi temeli

Birim testinin amacını, FIRST özelliklerini ve regresyona karşı güvenlik ağı oluşturmadaki rolünü kavrarsınız.

✅
xUnit ile test

JUnit benzeri bir çerçeveyle test sınıfı yazmayı, anotasyonları ve assertion'larla doğrulama kurmayı öğrenirsiniz.

✅
AAA düzeni

Arrange-Act-Assert düzeniyle okunabilir testler yazmayı ve istisna durumlarını doğru test etmeyi kavrarsınız.

✅
TDD döngüsü

Kırmızı-yeşil-refactor döngüsünü küçük adımlarla uygulayarak her adımda çalışan koda sahip olmayı öğrenirsiniz.

✅
Test çiftleri

Stub, mock ve fake arasındaki farkı kavrar; durum ve davranış doğrulamasını ayırt etmeyi öğrenirsiniz.

✅
Mockito kullanımı

Mockito ile mock oluşturmayı, davranış tanımlamayı ve metot çağrılarını doğrulamayı uygulamalı olarak öğrenirsiniz.

✅
Refactoring

Testlerin güvencesiyle metot çıkarma ve yinelemeyi kaldırma gibi refactoring tekniklerini güvenle uygulamayı öğrenirsiniz.

✅
Kapsam yorumu

Kod kapsamını test kalitesi göstergesi olarak doğru yorumlar ve yüksek kapsamın tek başına yeterli olmadığını kavrarsınız.

Kimler İçin Uygundur?

  • Birim testi ve TDD'ye başlamak isteyen yazılım geliştiriciler
  • test kültürü edinmek isteyen backend ekipleri
  • kod kalitesini artırmak isteyen programcılar
  • yeni mezun yazılımcılar için uygundur

Sıkça Sorulan Sorular

Bu eğitim kimler için uygundur?
Birim testi ve TDD'ye başlamak isteyen yazılım geliştiriciler, test kültürü edinmek isteyen backend ekipleri ve kod kalitesini artırmak isteyen programcılar için uygundur. Java veya benzeri nesne tabanlı bir dilde kod yazabilmek gereklidir; test deneyimi beklenmez.
Eğitimde hangi dil ve araçlar kullanılıyor?
Örnekler JUnit benzeri bir xUnit çerçevesi ve Mockito ile Java ağırlıklı işlenir; ilkeler C# ve diğer nesne tabanlı dillere de uyarlanabilir. Katılımcılar IntelliJ, Eclipse veya benzeri bir IDE üzerinde birim testi yazarak uygular.
Bu eğitim diğer TDD eğitiminden nasıl ayrılır?
TT3500 esasları, geliştiriciye birim testi ve TDD döngüsünü araç düzeyinde, kata alıştırmalarıyla kazandırmaya odaklanır. Daha ileri TDD eğitimi ise eski kod, BDD köprüsü ve sürekli entegrasyon gibi daha geniş strateji konularını kapsar.
Eğitimin süresi ve formatı nedir?
Eğitim üç gün sürer ve her gün dört modülden oluşur. Kavramlar canlı kodlama, birim testi yazma ve TDD kata alıştırmalarıyla bilgisayar başında işlenir. Program yüz yüze veya online yapılabilir ve kurumun diline göre uyarlanabilir.
Eğitim sonunda sertifika veriliyor mu?
Programı tamamlayan katılımcılar Digital Vizyon Akademi Katılım ve Başarı Sertifikası alır. Eğitim, geliştiricilere birim testi ve TDD esaslarını uygulamalı kazandırmaya odaklanır ve kurumun teknoloji yığınına göre uyarlanabilir.

Sertifikalandırma

Bu eğitim Digital Vizyon Akademi Başarı Sertifikası ile tamamlanır.

Eğitim başında “Ön Test”, bitiminde “Son Test” uygulanarak gelişim ölçümlenir. Değerlendirme formunu dolduran katılımcılar sertifikalarını alır. Sertifikanızın geçerliliğini Sertifika Sorgulama sayfasından doğrulayabilirsiniz.

Örnek Sertifika d Digital Vizyon AKADEMİ KATILIM SERTİFİKASI Bu sertifika [Katılımcı Adı Soyadı] adlı katılımcının aşağıdaki eğitim programını başarıyla tamamladığını belgeler. Test Driven Development (TDD) and Unit Testing Essentials (T Sertifika Kodu DV-2026XX00 Tarih 15.10.2026 Yetkili İmza DV AKADEMİ

Eğitim Bilgileri

Süre3 gün
SeviyeTemel Seviye
FormatOnline / Yüz Yüze / Hibrit
Sertifika✓ Var
Hemen Bilgi Al
İlgili Eğitimler

Bu Eğitimle Birlikte Tercih Edilenler

Yazılım Test TemelleriTester Foundation Level 4.0: Software Testing Support Tools Eğitimi
Yazılım Testi ve Kalite Eğitimleri

Tester Foundation Level 4.0: Software Testing Support Tools Eğitimi

3 günTemelOnline / Yüz Yüze / Hibrit

ISTQB CTFL 4.0 test araçları eğitimi: araç kategorileri, test otomasyonu, Selenium, JUnit, araç seçimi, CI/CD entegrasyonu ve getiri analizi.

Detayları Gör →
Yazılım Test TemelleriTester Foundation Level 4.0: Static Software Testing Eğitimi
Yazılım Testi ve Kalite Eğitimleri

Tester Foundation Level 4.0: Static Software Testing Eğitimi

3 günTemelOnline / Yüz Yüze / Hibrit

ISTQB CTFL 4.0 statik test eğitimi: inceleme süreci, inceleme türleri, inceleme rolleri, statik analiz ve kod metrikleriyle erken kusur bulma.

Detayları Gör →
Yazılım Test TemelleriUnit Testing with Mocks: Creating Mocks & Verifying Behavior Eğitimi
Yazılım Testi ve Kalite Eğitimleri

Unit Testing with Mocks: Creating Mocks & Verifying Behavior Eğitimi

3 günOrtaOnline / Yüz Yüze / Hibrit

Birim testte mock eğitimi: test doubles, Mockito ile mock oluşturma, stubbing, argument matcher, verify ile davranış doğrulama ve anti-desenler.

Detayları Gör →
Yazılım Test TemelleriUnit Testing with Mocks: Getting Started with Mockito Eğitimi
Yazılım Testi ve Kalite Eğitimleri

Unit Testing with Mocks: Getting Started with Mockito Eğitimi

3 günOrtaOnline / Yüz Yüze / Hibrit

Mockito ile mock oluşturma, when/thenReturn stubbing, ArgumentMatchers, @InjectMocks ve verify ile etkileşim doğrulamayı öğreten uygulamalı birim test eğitimi.

Detayları Gör →
Yazılım Test TemelleriUnit Testing with Mocks: Mocking Exceptions & Using Spies Eğitimi
Yazılım Testi ve Kalite Eğitimleri

Unit Testing with Mocks: Mocking Exceptions & Using Spies Eğitimi

4 günOrtaOnline / Yüz Yüze / Hibrit

Mockito ile thenThrow ve doThrow ile istisna fırlatma, void metot hataları, assertThrows, spy ile kısmi mock ve hata yollarının testini öğreten uygulamalı eğiti

Detayları Gör →
Yazılım Test TemelleriUnit Testing: Advanced Annotations in JUnit Eğitimi
Yazılım Testi ve Kalite Eğitimleri

Unit Testing: Advanced Annotations in JUnit Eğitimi

4 günİleriOnline / Yüz Yüze / Hibrit

JUnit 5 @Nested, @ParameterizedTest, @MethodSource, @ExtendWith, @RegisterExtension, @TestTemplate ve özel uzantı geliştirmeyi işleyen ileri birim test eğitimi.

Detayları Gör →
+90 (501) 369 40 14 WhatsApp [email protected] LinkedIn