TEST DRIVEN DEVELOPMENT FOR C# DEVELOPERS EĞİTİMİ

Geliştirici gibi test edin, test ederek geliştirin

xUnit ile TDD döngüsü, test doubles, bağımlılık yönetimi, refactoring ve CI hattında otomatik test.

Bu eğitim, C# geliştiricilerinin TDD’yi günlük işlerine yerleştirmesine odaklanır. xUnit ile birim test, Fact/Theory, fixture ve IClassFixture, Red-Green-Refactor, FluentAssertions, Moq ile bağımlılık izolasyonu, test edilebilir sınıf tasarımı, domain mantığı…

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

Eğitim Hakkında

C# geliştiricileri için TDD: birim test pratiği, xUnit, mock, refactoring ve temiz kod

Bu eğitim, C# geliştiricilerinin TDD’yi günlük işlerine yerleştirmesine odaklanır. xUnit ile birim test, Fact/Theory, fixture ve IClassFixture, Red-Green-Refactor, FluentAssertions, Moq ile bağımlılık izolasyonu, test edilebilir sınıf tasarımı, domain mantığının TDD ile geliştirilmesi, refactoring ve kod kokuları, entegrasyon testlerinin yeri ve CI ortamında otomatik test çalıştırma uygulamalı işlenir.

Süre ve Format

3 Gün. Her gün dört modül; TDD ile Geliştirme; Bağımlılık İzolasyonu ve Refactoring; Entegrasyon, Otomasyon ve Takım Pratiği.

Seviye

Orta Seviye — C# geliştiricileri için TDD: birim test pratiği, xUnit, mock, refactoring ve temiz kod

Öğrenme Metodu

Her modül Visual Studio 2022, .NET 8 SDK, xUnit, FluentAssertions ve Moq üzerinde canlı kodlama, hata ayıklama ve mini görevlerle işlenir; katılımcılar kendi bilgisayarında örnekleri yeniden üretir.

Neden Bu Eğitim?

🧑‍💻Uygulamalı Lab

Her gün Visual Studio 2022, .NET 8 SDK, xUnit, FluentAssertions ve Moq üzerinde kod yazılır; konular sunum yerine çalışan örneklerle pekiştirilir.

🎯Konuya Özgü İçerik

Program xUnit Temelleri ile başlayıp Ekip ve Süreç ile biter; gerçek projelerde karşılaşılan durumlara odaklanır.

📈Doğrudan Projeye

Edinilen teknikler c# geliştiricileri için TDD: birim test pratiği, xUnit, mock, refactoring ve temiz kod alanındaki günlük işlerde hemen kullanılabilecek şekilde kurgulanır.

Anahtar Konular

tdd c# geliştiricilerxunit eğitimifluentassertionstest driven developmentbirim testmoqrefactoringtemiz kodci test otomasyonu
“Testler sizi yavaşlatmaz; yanlış yönde hızlı gitmenizi engeller.”

Ön Koşullar

Eğitimden verim almak için faydalı olacak bilgi ve ortam gereksinimleri

1
C# Temelleri

Sınıf, arayüz ve koleksiyonlarla çalışmış olmak gerekir.

2
Bağımlılık Kavramı

DI ve arayüz kullanımına aşinalık faydalıdır.

3
Çalışma Ortamı

Uygulamalar için Visual Studio 2022, .NET 8 SDK, xUnit, FluentAssertions ve Moq kurulu veya erişilebilir bir bilgisayar önerilir.

4
Aktif Katılım

Her gün laboratuvar çalışması yapıldığından kod yazmaya ve soru sormaya hazır gelinmesi beklenir.

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ı xUnit ile küçük adımlarla TDD yapar.
Modül 1
xUnit Temelleri
  • [Fact] ve [Theory] ile [InlineData], [MemberData], [ClassData]
  • Constructor ve IDisposable ile kurulum/temizlik
  • IClassFixture ve ICollectionFixture
  • Test çıktısı: ITestOutputHelper
  • Assert yöntemleri ve FluentAssertions zinciri
  • Test keşfi ve paralellik
Modül 2
Red-Green-Refactor
  • Başarısız test yazma ve neden yazılır
  • Geçmek için en basit kod
  • Refactor güvenle yapmak
  • Üçgenleme ve açık uygulama
  • Test listesi tutma
  • Adım büyüklüğünü ayarlama
Modül 3
Domain TDD
  • Fatura/indirim hesaplama senaryosu
  • Value object testleri
  • İş kuralı değişikliklerinde test önceliği
  • Sınır değer ve eşdeğerlik sınıfları
  • Hata durumları ve istisna sözleşmesi
  • Zaman bağımlılığı: TimeProvider
Modül 4
Test Okunabilirliği
  • Test başına tek davranış
  • Arrange-Act-Assert düzeni
  • Builder ile test verisi
  • Magic number ve gizli bağımlılık
  • Test adlarında niyet açıklama
  • Ortak kurulumun aşırı kullanımı
Günün hedefiKatılımcı bağımlılıkları izole eder ve testlerle korunan refactoring yapar.
Modül 1
Moq ile İzolasyon
  • Mock, Setup, Returns, ReturnsAsync
  • Verify, Times ve çağrı sırası
  • Callback ve istisna fırlatma
  • Strict ve loose davranış
  • Mock’lanmaması gerekenler
  • Alternatif: NSubstitute, FakeItEasy
Modül 2
Test Edilebilir Tasarım
  • Constructor injection ve arayüz çıkarma
  • Statik çağrı ve singleton sorunları
  • Pure function ve yan etki ayrımı
  • Humble object deseni
  • Repository ve servis katmanı testi
  • Controller ve servis sınırı
Modül 3
Refactoring
  • Kod kokuları: long method, duplicate code, primitive obsession
  • Extract method/class, rename, move
  • Testlerle güvenli refactor
  • Branch by abstraction
  • Visual Studio ve Rider refactoring araçları
  • Teknik borç ve test borcu
Modül 4
Legacy Koda TDD
  • Karakterizasyon testi yazma
  • Seam bulma ve bağımlılık kırma
  • Yeni özelliği TDD ile ekleme
  • Büyük sınıfı parça parça test altına alma
  • Test edilemeyen koda minimal müdahale
  • Risk bazlı öncelik
Günün hedefiKatılımcı test paketini CI hattına entegre eder ve ekip pratiğini planlar.
Modül 1
Entegrasyon Testleri
  • Veritabanı testi: EF Core InMemory, SQLite, Testcontainers
  • WebApplicationFactory ile API testi
  • Dış HTTP servislerini WireMock ile taklit
  • Test verisi yönetimi
  • Entegrasyon ve birim test dengesi
  • Yavaş test yönetimi
Modül 2
CI/CD
  • GitHub Actions / Azure DevOps ile dotnet test
  • Coverlet kapsam raporu
  • Test sonuçlarını yayınlama
  • Pull request kalite kapısı
  • Paralel test koşumu
  • Başarısız testte bildirim
Modül 3
Kalite Metrikleri
  • Satır ve dal kapsamı yorumlama
  • Mutasyon testi: Stryker.NET
  • Kod karmaşıklığı (cyclomatic)
  • SonarQube analizi
  • Test süresi ve kararsız test takibi
  • Ölçülebilir hedefler
Modül 4
Ekip ve Süreç
  • TDD ve code review
  • Pair/mob programming
  • BDD ve kabul testi köprüsü
  • Kapanış projesi: TDD ile küçük bir servis
  • TDD ile ilgili yaygın itirazlar
  • Kademeli benimseme planı

Eğitim Kazanımları

Program sonunda katılımcılar:

🧩
xUnit Temelleri

xUnit Temelleri kapsamında [Fact] ve [Theory] ile [InlineData], [MemberData], [ClassData] gibi yapıları kendi projenizde doğrudan uygulayabilirsiniz.

⚙️
Red-Green-Refactor

Red-Green-Refactor kapsamında Başarısız test yazma ve neden yazılır gibi yapıları kendi projenizde doğrudan uygulayabilirsiniz.

🧪
Test Okunabilirliği

Test Okunabilirliği kapsamında Test başına tek davranış gibi yapıları kendi projenizde doğrudan uygulayabilirsiniz.

🔍
Moq ile İzolasyon

Moq ile İzolasyon kapsamında Mock, Setup, Returns, ReturnsAsync gibi yapıları kendi projenizde doğrudan uygulayabilirsiniz.

🚀
Refactoring

Refactoring kapsamında Kod kokuları: long method, duplicate code, primitive obsession gibi yapıları kendi projenizde doğrudan uygulayabilirsiniz.

🛠️
Legacy Koda TDD

Legacy Koda TDD kapsamında Karakterizasyon testi yazma gibi yapıları kendi projenizde doğrudan uygulayabilirsiniz.

📦
CI/CD

CI/CD kapsamında GitHub Actions / Azure DevOps ile dotnet test gibi yapıları kendi projenizde doğrudan uygulayabilirsiniz.

🔐
Kalite Metrikleri

Kalite Metrikleri kapsamında Satır ve dal kapsamı yorumlama gibi yapıları kendi projenizde doğrudan uygulayabilirsiniz.

Kimler İçin Uygundur?

  • Birim test yazma alışkanlığı olmayan veya TDD’yi sistematik uygulamak isteyen C# geliştiricileri için uygundur

Sıkça Sorulan Sorular

Bu eğitim kimler için uygundur?
Birim test yazma alışkanlığı olmayan veya TDD’yi sistematik uygulamak isteyen C# geliştiricileri için uygundur.
Test Driven Development for C# Developers eğitiminde hangi araçlar kullanılır?
Uygulamalar Visual Studio 2022, .NET 8 SDK, xUnit, FluentAssertions ve Moq üzerinde yürütülür; her modülün sonunda çalışan bir örnek veya mini proje tamamlanır.
Eğitim kaç gün sürer ve nasıl işlenir?
Program 3 gündür ve her gün dört modülden oluşur; ilk gün tDD ile Geliştirme ile başlanır, son gün entegrasyon, Otomasyon ve Takım Pratiği ile tamamlanır.
Ön bilgi gerekir mi?
Sınıf, arayüz ve koleksiyonlarla çalışmış olmak gerekir. DI ve arayüz kullanımına aşinalık faydalıdır.
Eğitim sonunda sertifika alınır mı?
Eğitimi tamamlayan katılımcılara Digital Vizyon Akademi Katılım ve Başarı Sertifikası verilir; üçüncü taraf bir kurumun sınavı söz konusuysa sınav başvurusu ve ücreti ilgili kuruma aittir.

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 for C# Developers Eğitimi Sertifika Kodu DV-2026XX00 Tarih 27.10.2026 Yetkili İmza DV AKADEMİ

Eğitim Bilgileri

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

Bu Eğitimle Birlikte Tercih Edilenler

C# ve .NETProgramming in C#: Managing Program Flow Eğitimi
Yazılım Geliştirme Eğitimleri

Programming in C#: Managing Program Flow Eğitimi

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

Programming in C#: Managing Program Flow eğitimi: C# program akışı yönetimi: kararlar, döngüler, olaylar, delegate. 2 gün uygulamalı program, Visual Studio 2022

Detayları Gör →
C# ve .NETProgramming in C#: Manipulating & Retrieving Data Eğitimi
Yazılım Geliştirme Eğitimleri

Programming in C#: Manipulating & Retrieving Data Eğitimi

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

Programming in C#: Manipulating & Retrieving Data eğitimi: C# ile veri işleme ve sorgulama: koleksiyonlar, LINQ, string/regex. 2 gün uygulamalı program, Visual

Detayları Gör →
C# ve .NETProgramming in C#: Memory Management & String Operations Eğitimi
Yazılım Geliştirme Eğitimleri

Programming in C#: Memory Management & String Operations Eğitimi

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

Programming in C#: Memory Management & String Operations eğitimi: C# bellek yönetimi ve string işlemleri: GC, IDisposable, finalizer. 2 gün uygulamalı program,

Detayları Gör →
C# ve .NETProgramming in C#: Using Types Eğitimi
Yazılım Geliştirme Eğitimleri

Programming in C#: Using Types Eğitimi

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

Programming in C#: Using Types eğitimi: C# tür sistemi: değer ve referans türler, dönüşümler, koleksiyonlar. 2 gün uygulamalı program, Visual Studio 2022 ve .NE

Detayları Gör →
C# ve .NETRabbitMQ ile .NET Eğitimi
Yazılım Geliştirme Eğitimleri

RabbitMQ ile .NET Eğitimi

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

RabbitMQ ile .NET eğitimi: RabbitMQ ile .NET mesajlaşma: exchange türleri, kuyruk, onay. 3 gün uygulamalı program, Visual Studio 2022, .NET 8 SDK ile. Digital V

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