Giriş
  • Ders'e Giriş
  • Geliştirme Ortamımızı Ayağa Kaldıralım
  • Kaynaklar
Unit Test Nedir?
  • Object Oriented Paradigma’da Unit Test Nedir?
  • Unit Test’in Yapısı
  • Nasıl Çalıştığını Görelim
  • Neden Unit Test Yazmalıyız?
  • Unit Test Nedir?
  • Kaynaklar
Temel Seviye JUnit
  • JUnit Nedir?
  • Standart Test Sınıfı
  • Testleri İsimlendirme
  • Örnek Proje: Öğrenci Ders Kayıt
  • Assertion Nedir?
  • Standart Assertion'lar
  • Assertion’ların Gruplanması
  • Exception Assertion’ı
  • Zaman Aşımı Assertion'ları
  • Assumptions
  • Testleri Pasifleştirme
  • Koşullu Test Çalıştırma
  • Tagleme ve Filtreleme
  • Pratik I: Fibonacci Sayıları
  • Pratik II: Minimum Yol Maliyeti: Problem
  • Pratik II: Minimum Yol Maliyeti: Senaryolar ve Kontroller
  • Pratik II: Minimum Yol Maliyeti: Başlangıç Bitiş Aynı
  • Pratik II: Minimum Yol Maliyeti: Tek Satırlı Matrix
  • Pratik II: Minimum Yol Maliyeti: Çok Satırlı Matrix
  • Pratik III: Öğretim Üyesine Ders Ekleme
  • Temel Seviye JUnit
  • Temel Seviye JUnit Ödev
  • Kaynaklar
Orta Seviye JUnit
  • Test Methodlarının Hayat Döngüsü(Lifecycle)
  • İç İçe Testler(@Nested)
  • Dependency Injection
  • Test Interface ve Default Method’lar
  • Tekrar Eden Testler(@RepeatedTest)
  • Parametrik Testler: @ValueSource
  • Parametrik Testler: @EnumSource
  • Parametrik Testler: @MethodSource
  • Parametrik Testler: @CsvSource, @CsvFileSource
  • Parametrik Testler: @ArgumentSource
  • Parametrik Testler: Type Conversion, Display Name
  • Dinamik Testler
  • Pratik I: PrimeFactors
  • Pratik II: Öğrenci Ders Sil
  • Orta Seviye JUnit
  • Orta Seviye JUnit Ödev
İleri Seviye JUnit
  • Extension Model
  • Execution Condition
  • Test Instance Post Processor
  • Parameter Resolver
  • Test Hayat Döngüsünde Kullanılan Callback’ler
  • Hata Yönetimi
  • Test Şablonları(@TestTemplate)
  • Pratik: Öğrenci Ortalama Not Hesapla
  • Ileri Seviye JUnit
AssertJ
  • AssertJ Nedir?
  • String’ler Üzerinde Assertion’lar
  • Collection’lar Üzerinde Assertion’lar I
  • Collection'lar Üzerinde Assertion'lar II
  • Kendi Objelerimiz Üzerinde Assertion’lar
  • Exception’lar Üzerinde Assertion'lar
  • Pratik: Ders Kayıt JUnit Assertion’ları AssertJ’e Çevirelim
Mock Objeler
  • Mock Obje Nedir?
  • Ne Zaman Mock Obje Kullanmalıyım?
  • Farklı Mock Obje Tanımları
  • Mock Objeler
  • Kaynaklar
Temel Seviye Mockito
  • Ders Kayıt Projesine Application Katmanı Ekleme
  • Mockito Nedir?
  • Mock Obje Davranışlarını Programlama(Stubbing)
  • Mock Obje Etkileşimlerini Geçerleme
  • Mockito’nun Kısıtları
  • Pratik: Öğrenci Ders Sil Servisi
  • Temel Seviye Mockito
  • Kaynaklar
Orta Seviye Mockito
  • Mockito Annotation'ları
  • void Dönen Methodların Mock'lanması
  • Argument Captor
  • Pratik: Öğrenci Transcript Servisi
  • Orta Seviye Mockito
İleri Seviye Mockito
  • Farklı Geçerleme Yöntemleri
  • Spy
  • Kısmi(Partial) Mock
  • Mockito ile BDD
  • İleri Seviye Mockito
Kapanış
  • Bu Ders’den Sonra Nasıl Devam Edebilirim?
  • Kaynaklar