Test Güdümlü Geliştirme İş Akışı
Bu skill tüm kod geliştirmenin kapsamlı test kapsamı ile TDD ilkelerini takip etmesini sağlar.
Ne Zaman Aktifleştirmelisiniz
- Yeni özellikler veya fonksiyonellik yazarken
- Hataları veya sorunları düzeltirken
- Mevcut kodu refactor ederken
- API endpoint'leri eklerken
- Yeni bileşenler oluştururken
Temel İlkeler
1. Koddan ÖNCE Testler
HER ZAMAN önce testleri yazın, sonra testleri geçmesi için kod uygulayın.
2. Kapsam Gereksinimleri
- Minimum %80 kapsam (unit + integration + E2E)
- Tüm uç durumlar kapsanmış
- Hata senaryoları test edilmiş
- Sınır koşulları doğrulanmış
3. Test Tipleri
Unit Testler
- Bireysel fonksiyonlar ve yardımcı araçlar
- Bileşen mantığı
- Pure fonksiyonlar
- Yardımcılar ve utilities
Integration Testler
- API endpoint'leri
- Veritabanı operasyonları
- Service etkileşimleri
- Harici API çağrıları
E2E Testler (Playwright)
- Kritik kullanıcı akışları
- Tam iş akışları
- Tarayıcı otomasyonu
- UI etkileşimleri
TDD İş Akışı Adımları
Adım 1: Kullanıcı Hikayeleri Yazın
Adım 2: Test Senaryoları Oluşturun
Her kullanıcı hikayesi için kapsamlı test senaryoları oluşturun:
Adım 3: Testleri Çalıştırın (Başarısız Olmalı)
Adım 4: Kod Uygulayın
Testleri geçmesi için minimal kod yazın:
Adım 5: Testleri Tekrar Çalıştırın
Adım 6: Refactor Edin
Testleri yeşil tutarken kod kalitesini iyileştirin:
- Tekrarı kaldırın
- İsimlendirmeyi iyileştirin
- Performansı optimize edin
- Okunabilirliği artırın
Adım 7: Kapsamı Doğrulayın
Test Kalıpları
Unit Test Kalıbı (Jest/Vitest)
API Integration Test Kalıbı
E2E Test Kalıbı (Playwright)
Test Dosya Organizasyonu
Harici Servisleri Mock'lama
Supabase Mock
Redis Mock
OpenAI Mock
Test Kapsamı Doğrulama
Kapsam Raporu Çalıştır
Kapsam Eşikleri
Kaçınılması Gereken Yaygın Test Hataları
FAIL: YANLIŞ: Implementasyon Detaylarını Test Etme
PASS: DOĞRU: Kullanıcı Tarafından Görünen Davranışı Test Et
FAIL: YANLIŞ: Kırılgan Selector'lar
PASS: DOĞRU: Semantik Selector'lar
FAIL: YANLIŞ: Test İzolasyonu Yok
PASS: DOĞRU: Bağımsız Testler
Sürekli Test
Geliştirme Sırasında Watch Modu
Pre-Commit Hook
CI/CD Entegrasyonu
En İyi Uygulamalar
- Önce Testleri Yaz - Her zaman TDD
- Test Başına Bir Assert - Tek davranışa odaklan
- Açıklayıcı Test İsimleri - Neyin test edildiğini açıkla
- Arrange-Act-Assert - Net test yapısı
- Harici Bağımlılıkları Mock'la - Unit testleri izole et
- Uç Durumları Test Et - Null, undefined, boş, büyük
- Hata Yollarını Test Et - Sadece happy path değil
- Testleri Hızlı Tut - Unit testler < 50ms her biri
- Testlerden Sonra Temizle - Yan etki yok
- Kapsam Raporlarını İncele - Boşlukları tespit et
Başarı Metrikleri
- %80+ kod kapsamı sağlanmış
- Tüm testler geçiyor (yeşil)
- Atlanmış veya devre dışı test yok
- Hızlı test yürütme (< 30s unit testler için)
- E2E testler kritik kullanıcı akışlarını kapsıyor
- Testler production'dan önce hataları yakalar
Unutmayın: Testler opsiyonel değildir. Güvenli refactoring, hızlı geliştirme ve production güvenilirliği sağlayan güvenlik ağıdırlar.


