AGILE & TDD BEST PRACTICES FOR APIS: API MICROSERVICES USING TDD EĞİTİMİ

Önce testi yazın, sonra API'yi

Çevik takımlarda Red-Green-Refactor ile API ve mikroservis geliştirme, BDD, sözleşme testi ve sürekli teslimat pratikleri

Çevik takımlarda Red-Green-Refactor ile API ve mikroservis geliştirme, BDD, sözleşme testi ve sürekli teslimat pratikleri. Test güdümlü geliştirme ile API kalitesi odağında uygulamalı laboratuvarlarla işlenir.

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

Eğitim Hakkında

Test güdümlü geliştirme ile API kalitesi

Eğitim TDD'yi çevik ekip pratikleriyle birleştirerek API ve mikroservis geliştirmeye uygular. JUnit 5, AssertJ, Mockito, MockMvc ve REST Assured ile test yazımı, Testcontainers ile veritabanı testi, Cucumber ile BDD, Pact ve Spring Cloud Contract ile sözleşme testi, hexagonal mimari ile refactor ve CI hattında test aşamaları uygulamalı işlenir.

Süre ve Format

3 Gün. Her gün dört modül; 1. gün TDD Döngüsü ve API Birim Testleri; 2. gün BDD, Sözleşme ve API Tasarımı; 3. gün Refactoring ve Sürekli Teslimat.

Seviye

Orta Seviye — Test güdümlü geliştirme ile API kalitesi

Öğrenme Metodu

Katılımcılar eşli programlama oturumlarında önce testi yazıp sonra kodu geliştirerek küçük bir sipariş API'sini adım adım büyütür, her adımda refactor yapar.

Neden Bu Eğitim?

🔴Önce Test

Red-Green-Refactor ritmiyle değişikliğe güvenle açık kod yazmayı kazanırsınız.

🤝Çevik Takım Uyumu

Kullanıcı hikayesi ve kabul kriterlerinden test ve koda uzanan akışı uygularsınız.

🧱Sözleşme Güvencesi

BDD ve tüketici güdümlü sözleşmeyle servisler arası bozulmaları erken yakalarsınız.

Anahtar Konular

tddtest driven developmentapi tddmockitorest assuredbddcucumberpactagile & tdd best practices for apis: api microservices using tdd
“Test, kodun ilk müşterisidir.”

Ön Koşullar

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

1
Java ve Spring

Java'da temel nesne yönelimli programlama ve Spring Boot'a aşinalık beklenir.

2
REST Bilgisi

Controller, servis ve repository katmanlı bir REST uygulamasının mantığına hâkimiyet gerekir.

3
Geliştirme Ortamı

JDK 17+, Maven ve IntelliJ ya da VS Code kurulu olmalıdır.

4
Git

Temel Git komutlarını kullanabilmek lab akışını kolaylaştırır.

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ı gün sonunda TDD Döngüsü ve Çevik Pratikler konusunu çalıştırır, TDD ile API Geliştirme ve HTTP Metot ve Durum Kodu Semantiği ile ilerleyip Hata Yönetimi ve Problem Details kararlarını gerekçelendirir.
Modül 1
TDD Döngüsü ve Çevik Pratikler
  • Red-Green-Refactor döngüsü ve küçük adımlarla ilerleme
  • Scrum ritüelleri: sprint planlama, günlük toplantı, gözden geçirme, retrospektif
  • Kullanıcı hikayesi, kabul kriterleri ve Definition of Done
  • Test piramidi ve birim testin hız / kapsam dengesi
  • Test double kavramları: dummy, stub, spy, mock, fake
  • Kod kapsama (JaCoCo) oranının yorumlanması ve yanıltıcı kullanımı
Modül 2
TDD ile API Geliştirme
  • JUnit 5 ve AssertJ ile birim test yazımı
  • Mockito ile repository ve istemci bağımlılıklarını taklit etme
  • MockMvc ve @WebMvcTest ile controller katmanı testi
  • REST Assured ile uçtan uca HTTP testi (given-when-then)
  • Testcontainers ile gerçek veritabanı üzerinde @DataJpaTest
  • Test önce yazılan bir sipariş API'sinin adım adım geliştirilmesi
Modül 3
HTTP Metot ve Durum Kodu Semantiği
  • GET, POST, PUT, PATCH, DELETE, HEAD, OPTIONS metotlarının amaçları
  • Güvenli (safe) ve idempotent metot kavramı, PUT ile POST farkı
  • PATCH için JSON Patch (RFC 6902) ve JSON Merge Patch (RFC 7396)
  • 2xx, 3xx, 4xx, 5xx durum kodu aileleri; 201 + Location, 204, 202 kullanımı
  • 400, 401, 403, 404, 405, 409, 415, 422, 429 kodlarının doğru ayrımı
  • Content negotiation: Accept, Accept-Language ve 406 / 415 yanıtları
Modül 4
Hata Yönetimi ve Problem Details
  • RFC 9457 / 7807 application/problem+json yapısı: type, title, status, detail, instance
  • Doğrulama hatalarında alan bazlı hata listesi biçimi
  • 4xx ile 5xx ayrımı: istemci hatası ile sunucu hatası sorumluluğu
  • Hata mesajlarında bilgi sızıntısını önleme (stack trace, SQL ifadesi)
  • İstek kimliği (correlation ID) ile hata yanıtlarının loglarla eşleştirilmesi
  • 429 Too Many Requests ve Retry-After ile istemci geri çekilme (backoff) yönlendirmesi
Günün hedefiKatılımcı BDD ve Sözleşme Testleri ve Mikroservis Test Stratejisi konularını uygulayarak API Öncelikli Tasarım Süreci ile OpenAPI ile Sözleşme ve Dokümantasyon adımlarını aynı örnek üzerinde birleştirir.
Modül 1
BDD ve Sözleşme Testleri
  • Gherkin: Given-When-Then yapısı ve ortak dil
  • Cucumber ile feature dosyası ve step definition yazımı
  • Spring Cloud Contract ve Pact ile tüketici güdümlü sözleşme
  • WireMock ile bağımlı servis davranışı taklidi
  • CI hattında test aşamaları: birim, entegrasyon, sözleşme, smoke
  • Flaky test nedenleri ve kararlı hale getirme teknikleri
Modül 2
Mikroservis Test Stratejisi
  • Test piramidi ve mikroservislere uyarlanmış test elması yaklaşımı
  • Birim testlerde Mockito ile bağımlılık izolasyonu
  • Testcontainers ile gerçek veritabanı ve Kafka üzerinde entegrasyon testi
  • Pact ile tüketici güdümlü sözleşme testi ve broker akışı
  • WireMock ile bağımlı servis taklidi (stub) ve hata senaryoları
  • Uçtan uca test maliyeti ve smoke test seçimi
Modül 3
API Öncelikli Tasarım Süreci
  • API-first ve code-first yaklaşımları: ekipler arası paralel çalışma avantajı
  • Kullanıcı yolculuğundan (user journey) kaynak ve işlem listesinin çıkarılması
  • Sözleşmeyi önce yazıp mock sunucudan istemci geliştirmeyi başlatma
  • Tasarım gözden geçirme (API review) oturumu ve stil rehberi oluşturma
  • Spectral kuralları ve CI içinde sözleşme lint'i
  • Breaking change tespiti için openapi-diff ve sözleşme sürüm kontrolü
Modül 4
OpenAPI ile Sözleşme ve Dokümantasyon
  • OpenAPI 3.x yapısı: paths, components, schemas, parameters, responses
  • $ref ile yeniden kullanım, allOf / oneOf ve discriminator
  • securitySchemes: apiKey, http bearer, oauth2 ve openIdConnect
  • Swagger Editor ve Stoplight ile tasarım, Spectral ile kural tabanlı lint
  • openapi-generator ile sunucu iskeleti ve istemci SDK'sı üretimi
  • Örnek (example) alanları ve Redoc ile geliştirici dokümanı yayınlama
Günün hedefiKatılımcı gün sonunda Refactoring ve Temiz API Kodu konusunu çalıştırır, CI/CD ve Mikroservis Dağıtım Hattı ve Sürümleme ve API Evrimi ile ilerleyip Dayanıklılık Kalıpları kararlarını gerekçelendirir.
Modül 1
Refactoring ve Temiz API Kodu
  • Kod kokuları: uzun metot, büyük sınıf, paylaşılan durum, özellik tutkusu
  • Extract Method, Extract Class, Replace Conditional with Polymorphism
  • Hexagonal mimari (port ve adapter) ile test edilebilir servis tasarımı
  • Katmanlar arası bağımlılığın yönü ve bağımlılık enjeksiyonu
  • Mutation testing (PIT) ile test kalitesinin ölçülmesi
  • Eski kodu karakterizasyon testleriyle güvenli refactor etme
Modül 2
CI/CD ve Mikroservis Dağıtım Hattı
  • Servis başına bağımsız pipeline ve mono-repo / poly-repo tercihleri
  • Jenkins ve GitHub Actions ile build, test, imaj push ve dağıtım adımları
  • Semantik sürümleme ve imaj etiketleme stratejisi
  • GitOps yaklaşımı: Argo CD ile bildirimsel dağıtım
  • Feature flag ile özelliklerin dağıtımdan ayrılması
  • Rollback planı ve dağıtım sonrası otomatik doğrulama (smoke test)
Modül 3
Sürümleme ve API Evrimi
  • Kırıcı (breaking) ve kırıcı olmayan değişikliklerin sınıflandırılması
  • URI, başlık (Accept vendor media type) ve sorgu parametresiyle sürümleme
  • Alan ekleme, alan kaldırma ve alan yeniden adlandırma stratejileri
  • Deprecation ve Sunset başlıkları (RFC 8594) ile emeklilik duyurusu
  • Tolerant reader ilkesi ve tüketici uyumluluğu
  • Sürümler arası kullanım izleme ve geçiş takvimi planlama
Modül 4
Dayanıklılık Kalıpları
  • Circuit breaker durumları (closed, open, half-open) ve Resilience4j yapılandırması
  • Retry stratejileri: exponential backoff ve jitter
  • Bulkhead, rate limiter ve timeout limiter ile kaynak izolasyonu
  • Fallback ve graceful degradation tasarımı
  • Sağlık uçları: liveness ve readiness probe ayrımı
  • Chaos engineering'e giriş: Chaos Monkey ile hata enjeksiyonu

Eğitim Kazanımları

Program sonunda katılımcılar:

✅
TDD Disiplini

Red-Green-Refactor döngüsünü çevik takım pratikleriyle birlikte uygulayabilirsiniz.

🧩
HTTP Semantiği

HTTP metotlarını ve durum kodlarını doğru semantikle kullanan uçlar tasarlayabilirsiniz.

🔧
Hata Yönetimi

Tutarlı problem+json hata yanıtları üretip istemcilerin hatadan toparlanmasını kolaylaştırabilirsiniz.

📐
Servis Testleri

Birim, entegrasyon ve sözleşme testlerini birlikte kullanan bir test stratejisi kurabilirsiniz.

🛡️
API-First Çalışma

Sözleşmeyi koddan önce tasarlayan bir API-first iş akışını ekibinize uygulayabilirsiniz.

🧪
Temiz Kod

Test güvencesiyle refactor yapıp hexagonal yapıda test edilebilir API kodu üretebilirsiniz.

🚀
Dağıtım Hattı

Her servis için bağımsız CI/CD ve GitOps tabanlı dağıtım hattı kurabilirsiniz.

📊
Dayanıklı Servisler

Circuit breaker, retry ve bulkhead kalıplarıyla hataya dayanıklı servisler yazabilirsiniz.

Kimler İçin Uygundur?

  • Java ve Spring ile API geliştiren yazılımcılar
  • test mühendisleri
  • çevik takım üyeleri içindir

Sıkça Sorulan Sorular

Bu eğitim kimler için uygundur?
Java ve Spring ile API geliştiren yazılımcılar, test mühendisleri ve çevik takım üyeleri içindir.
Java dışındaki dillerde de geçerli mi?
Yaklaşım dilden bağımsızdır; örnekler Java ve Spring ile gösterilir, kavramlar .NET veya Node.js'e uyarlanabilir.
TDD yavaşlatmaz mı?
Eğitim, TDD'nin başlangıç maliyetini ve uzun vadeli kazancını gerçek örneklerle karşılaştırır.
Mevcut projeye uygulanabilir mi?
Karakterizasyon testi ve refactor bölümü, test edilmemiş mevcut koda güvenli geçiş için ayrılmıştır.
Sertifika veriliyor mu?
Tamamlayan katılımcılara Digital Vizyon Akademi Katılım ve Başarı Sertifikası verilir.

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. Agile & TDD Best Practices for APIs: API Microservices Using 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

API ve Mikroservis MimarisiREST Assured API Testing: Validating JSON Responses & Schemas Eğitimi
Yazılım Geliştirme Eğitimleri

REST Assured API Testing: Validating JSON Responses & Schemas Eğitimi

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

REST Assured ile JSON yanıt ve JSON Schema doğrulaması: GPath, şema validator, POJO ve sözleşme testi. 2 gün uygulamalı eğitim, DVA Katılım ve Başarı Sertifikas

Detayları Gör →
API ve Mikroservis MimarisiREST Assured Configuration: Architecting & Structuring API Tests Eğitimi
Yazılım Geliştirme Eğitimleri

REST Assured Configuration: Architecting & Structuring API Tests Eğitimi

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

REST Assured test çatısı mimarisi: spesifikasyonlar, servis nesneleri, test verisi, raporlama ve CI. 3 gün uygulamalı eğitim, DVA Katılım ve Başarı Sertifikası.

Detayları Gör →
API ve Mikroservis MimarisiREST Assured Configuration: Error Handling & Fault Injection in API Tests Eğitimi
Yazılım Geliştirme Eğitimleri

REST Assured Configuration: Error Handling & Fault Injection in API Tests Eğitimi

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

REST Assured ile hata yönetimi ve hata enjeksiyonu: WireMock fault, zaman aşımı, bozuk yanıt ve dayanıklılık. 3 gün uygulamalı eğitim, DVA Katılım ve Başarı Ser

Detayları Gör →
API ve Mikroservis MimarisiREST Assured Techniques: Integrating Reporting with REST Assured API Testing Eğitimi
Yazılım Geliştirme Eğitimleri

REST Assured Techniques: Integrating Reporting with REST Assured API Testing Eğitimi

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

REST Assured test sonuçlarının Allure ve ExtentReports ile raporlanması ve CI hattında yayınlanması. 2 gün uygulamalı eğitim, DVA Katılım ve Başarı Sertifikası.

Detayları Gör →
API ve Mikroservis MimarisiREST Assured Techniques: Using WireMock API Mocking & JMeter Load Testing Eğitimi
Yazılım Geliştirme Eğitimleri

REST Assured Techniques: Using WireMock API Mocking & JMeter Load Testing Eğitimi

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

REST Assured ile WireMock API taklidi ve JMeter yük testi: stub, doğrulama, hata, korelasyon ve darboğaz analizi. 3 gün uygulamalı eğitim | DVA.

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